python Django中models進(jìn)行模糊查詢的示例
多個(gè)字段模糊查詢, 括號(hào)中的下劃線是雙下劃線,雙下劃線前是字段名,雙下劃線后可以是icontains或contains,區(qū)別是是否大小寫敏感,豎線是或的意思
#搜索功能
@csrf_exempt#使用@csrf_exempt裝飾器,免除csrf驗(yàn)證
def search_testCaseApi(request):
if request.method == 'POST':
name = request.POST.get('task_name')
updateUser=request.POST.get('task_updateUser')
if name=="" and updateUser=="":
obj_all = tnw_test_case_api.objects.filter(del_flag=0)
elif name!="" and updateUser=="":
obj_all = tnw_test_case_api.objects.filter(del_flag=0,case_name__contains=name)
elif name=="" and updateUser!="":
obj_all = tnw_test_case_api.objects.filter(del_flag=0,update_user__contains=updateUser)
else:
obj_all = tnw_test_case_api.objects.filter(del_flag=0,case_name__contains=name,update_user__contains=updateUser)
ApiCasesList = []
for li in obj_all:
need_interfacename = allFunction().get_interfaceName(li.id)
api_list, api_sum = allFunction().testIDConnect_needid(li.id)
if li.case_module is not None:
ApiCasesList.append({
"testCaseApi_id": li.id,
"testCaseApi_name": li.case_name,
"testCaseApi_sum": api_sum,
"testCaseApi_version": li.case_version,
"testCaseApi_module": li.case_module,
"testCaseApi_need_interfacename": need_interfacename,
"testCaseApi_createTime": str(li.create_time),
"testCaseApi_updateTime": str(li.update_time),
"testCaseApi_updateUser": li.update_user,
})
else:
ApiCasesList.append({
"testCaseApi_id": li.id,
"testCaseApi_name": li.case_name,
"testCaseApi_sum": 1,
"testCaseApi_version": li.case_version,
"testCaseApi_module": li.case_module,
"testCaseApi_need_interfacename": need_interfacename,
"testCaseApi_createTime": str(li.create_time),
"testCaseApi_updateTime": str(li.update_time),
"testCaseApi_updateUser": li.update_user,
})
# 將int類型使用dumps()方法轉(zhuǎn)為str類型
ApiCasesList_len = json.dumps(len(ApiCasesList))
# 構(gòu)造一個(gè)字典
json_data_list = {'rows': ApiCasesList, 'total': ApiCasesList_len}
# dumps()將字典轉(zhuǎn)變?yōu)閖son形式,
easyList = json.dumps(json_data_list)
# 將json返回去,json的鍵值對(duì)中的鍵需要與前臺(tái)的表格field=“X”中的X名稱保持一致)
return HttpResponse(easyList)
以上這篇python Django中models進(jìn)行模糊查詢的示例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python連接mysql數(shù)據(jù)庫(kù)并讀取數(shù)據(jù)的實(shí)現(xiàn)
這篇文章主要介紹了python連接mysql數(shù)據(jù)庫(kù)并讀取數(shù)據(jù)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
python的簡(jiǎn)單四則運(yùn)算語(yǔ)法樹可視化
這篇文章主要介紹了python的簡(jiǎn)單四則運(yùn)算語(yǔ)法樹可視化,這篇文章的內(nèi)容也很簡(jiǎn)單,就是給定一個(gè)四則運(yùn)算的表達(dá)式,畫出它的語(yǔ)法樹,需要的朋友可以參考下2023-04-04
如何在Django項(xiàng)目中引入靜態(tài)文件
這篇文章主要介紹了如何在Django項(xiàng)目中引入靜態(tài)文件,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07
Python多進(jìn)程協(xié)作模擬實(shí)現(xiàn)流程
當(dāng)多個(gè)進(jìn)程使用同一份數(shù)據(jù)資源的時(shí)候,因?yàn)檫M(jìn)程的運(yùn)行沒有順序,運(yùn)行起來也無法控制,如果不加以干預(yù),往往會(huì)引發(fā)數(shù)據(jù)安全或順序混亂的問題,所以要在多個(gè)進(jìn)程讀寫共享數(shù)據(jù)資源的時(shí)候加以適當(dāng)?shù)牟呗裕瑏肀WC數(shù)據(jù)的一致性問題2023-01-01
Python爬蟲自動(dòng)化獲取華圖和粉筆網(wǎng)站的錯(cuò)題(推薦)
這篇文章主要介紹了Python爬蟲自動(dòng)化獲取華圖和粉筆網(wǎng)站的錯(cuò)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01

