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之集成开发环境(IDE)
Sep 12 Python
python3.5使用tkinter制作记事本
Jun 20 Python
Python 多线程Threading初学教程
Aug 22 Python
pandas创建新Dataframe并添加多行的实例
Apr 08 Python
Python发送邮件功能示例【使用QQ邮箱】
Dec 04 Python
python利用requests库模拟post请求时json的使用教程
Dec 07 Python
Django接收post前端返回的json格式数据代码实现
Jul 31 Python
python实现静态服务器
Sep 05 Python
python打印异常信息的两种实现方式
Dec 24 Python
在python3中实现查找数组中最接近与某值的元素操作
Feb 29 Python
python3实现往mysql中插入datetime类型的数据
Mar 02 Python
Python实现爬取网页中动态加载的数据
Aug 17 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 正则 过滤html 的超链接
2009/06/02 PHP
PHP简洁函数小结
2011/08/12 PHP
Json_encode防止汉字转义成unicode的方法
2016/02/25 PHP
由php中字符offset特征造成的绕过漏洞详解
2017/07/07 PHP
js 获取服务器控件值的代码
2010/03/05 Javascript
JQuery对checkbox操作 (循环获取)
2011/05/20 Javascript
Jquery仿IGoogle实现可拖动窗口示例代码
2014/08/22 Javascript
解决js下referer兼容各大浏览器的方法
2014/11/03 Javascript
jQuery中$.click()无效问题分析
2015/01/29 Javascript
Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统
2016/05/27 Javascript
html中鼠标滚轮事件onmousewheel的处理方法
2016/11/11 Javascript
详解React-Native解决键盘遮挡问题(Keyboard遮挡问题)
2017/07/13 Javascript
vue 打包后的文件部署到express服务器上的方法
2017/08/09 Javascript
javaScript实现鼠标在文字上悬浮时弹出悬浮层效果
2020/04/12 Javascript
打通前后端构建一个Vue+Express的开发环境
2018/07/17 Javascript
用图片替换checkbox原始样式并实现同样的功能
2018/11/15 Javascript
送你43道JS面试题(收藏)
2019/06/17 Javascript
Vue仿微信app页面跳转动画效果
2019/08/21 Javascript
小程序实现长按保存图片的方法
2019/12/31 Javascript
python有证书的加密解密实现方法
2014/11/19 Python
Python交互环境下实现输入代码
2018/06/22 Python
python解释器pycharm安装及环境变量配置教程图文详解
2020/02/26 Python
Django-xadmin+rule对象级权限的实现方式
2020/03/30 Python
通过代码实例了解Python sys模块
2020/09/14 Python
查找适用于matplotlib的中文字体名称与实际文件名对应关系的方法
2021/01/05 Python
传统软件工程与面向对象的软件工程有什么区别
2012/05/31 面试题
党员组织关系介绍信
2014/02/13 职场文书
学历公证委托书
2014/04/09 职场文书
政府信息公开实施方案
2014/05/09 职场文书
体育比赛口号
2014/06/09 职场文书
经典团队口号大全
2014/06/21 职场文书
学校领导班子对照检查材料
2014/08/28 职场文书
作风整顿个人剖析材料
2014/10/06 职场文书
《百分数的认识》教学反思
2016/02/19 职场文书
《抽屉原理》教学反思
2016/02/20 职场文书
2019奶茶店创业计划书范本,值得你借鉴
2019/08/14 职场文书