python Django中models进行模糊查询的示例


Posted in Python onJuly 18, 2019

多个字段模糊查询, 括号中的下划线是双下划线,双下划线前是字段名,双下划线后可以是icontains或contains,区别是是否大小写敏感,竖线是或的意思

#搜索功能
@csrf_exempt#使用@csrf_exempt装饰器,免除csrf验证
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()方法转为str类型
    ApiCasesList_len = json.dumps(len(ApiCasesList))
    # 构造一个字典
    json_data_list = {'rows': ApiCasesList, 'total': ApiCasesList_len}
    # dumps()将字典转变为json形式,
    easyList = json.dumps(json_data_list)
    # 将json返回去,json的键值对中的键需要与前台的表格field=“X”中的X名称保持一致)
    return HttpResponse(easyList)

以上这篇python Django中models进行模糊查询的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python正则分组的应用
Nov 10 Python
分享15个最受欢迎的Python开源框架
Jul 13 Python
Linux下Python获取IP地址的代码
Nov 30 Python
python3简单实现微信爬虫
Apr 09 Python
python 禁止函数修改列表的实现方法
Aug 03 Python
Python实现PS图像调整黑白效果示例
Jan 25 Python
python2.x实现人民币转大写人民币
Jun 20 Python
python常见字符串处理函数与用法汇总
Oct 30 Python
Python实现链表反转的方法分析【迭代法与递归法】
Feb 22 Python
用Python绘制漫步图实例讲解
Feb 26 Python
Python opencv相机标定实现原理及步骤详解
Apr 09 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
Jun 18 Python
django-rest-framework 自定义swagger过程详解
Jul 18 #Python
django框架使用方法详解
Jul 18 #Python
Ubuntu+python将nii图像保存成png格式
Jul 18 #Python
python实现批量nii文件转换为png图像
Jul 18 #Python
django 捕获异常和日志系统过程详解
Jul 18 #Python
Django实现发送邮件功能
Jul 18 #Python
使用django的ORM框架按月统计近一年内的数据方法
Jul 18 #Python
You might like
深思 PHP 数组遍历的差异(array_diff 的实现)
2008/03/23 PHP
PHP mysql与mysqli事务使用说明 分享
2013/08/17 PHP
Yii2中OAuth扩展及QQ互联登录实现方法
2016/05/16 PHP
PHP实现用session来实现记录用户登陆信息
2018/10/15 PHP
js数字输入框(包括最大值最小值限制和四舍五入)
2009/11/24 Javascript
jQuery技巧总结
2011/01/01 Javascript
javascript jscroll模拟html元素滚动条
2012/12/18 Javascript
js验证整数加保留小数点的简单实例
2013/12/02 Javascript
jQuery源码解读之removeAttr()方法分析
2015/02/20 Javascript
JavaScript获得当前网页来源页面(即上一页)的方法
2015/04/03 Javascript
vue.js入门教程之计算属性
2016/09/01 Javascript
Bootstrap基本插件学习笔记之标签切换(17)
2016/12/08 Javascript
Bootstrap基本组件学习笔记之缩略图(13)
2016/12/08 Javascript
Bootstrap源码解读按钮(5)
2016/12/23 Javascript
jquery中绑定事件的异同
2017/02/28 Javascript
在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解
2017/09/19 NodeJs
JS实现获取汉字首字母拼音、全拼音及混拼音的方法
2017/11/14 Javascript
JSON获取属性值方法代码实例
2020/06/30 Javascript
[59:48]DOTA2-DPC中国联赛 正赛 VG vs Magma BO3 第一场 1月26日
2021/03/11 DOTA
Python自动化部署工具Fabric的简单上手指南
2016/04/19 Python
Numpy 改变数组维度的几种方法小结
2018/08/02 Python
详解Python爬取并下载《电影天堂》3千多部电影
2019/04/26 Python
Python PyQt5 Pycharm 环境搭建及配置详解(图文教程)
2019/07/16 Python
Django中的cookie和session
2019/08/27 Python
在keras中实现查看其训练loss值
2020/06/16 Python
Selenium python时间控件输入问题解决方案
2020/07/22 Python
工程专业毕业生自荐信范文
2013/12/25 职场文书
银行职员思想汇报
2013/12/31 职场文书
房屋租赁合同补充协议
2014/10/11 职场文书
2015年教学管理工作总结
2015/05/20 职场文书
2015年预防青少年违法犯罪工作总结
2015/05/22 职场文书
2016教师学习党章心得体会
2016/01/15 职场文书
创业计划书之农家乐
2019/10/09 职场文书
2019年家电促销广告语集锦
2019/10/21 职场文书
golang 如何用反射reflect操作结构体
2021/04/28 Golang
python中sqllite插入numpy数组到数据库的实现方法
2021/06/21 Python