23 Django--Q的使用
方式1:
models.xx.objects.filter(Q(id=10))
models.xx.objects.filter(Q(id=10)&Q(age=10) # and
models.xx.objects.filter(Q(id=10)|Q(age=10) # or
models.xx.objects.filter(Q(id__gt=10)|Q(age__lte=10) # or
models.xx.objects.filter(Q(Q(id__gt=10)|Q(age__lte=10)) & Q(name='lxx') # or
方式2:
from django.db.models import Q
conn = Q()
conn.connector = 'OR'
conn.children.append(('name__contains', '李杰'))
conn.children.append(('email', '李杰'))
conn.children.append(('id__gt', 5))
self.model_class.objects.filter(conn)
q1 = Q()
q1.connector = 'OR'
q1.children.append(('id', 1))
q1.children.append(('age', 10))
q2 = Q()
q2.connector = 'ADN'
q2.children.append(('size__gt', 10))
q2.children.append(('name', 'root'))
con = Q()
con.add(conn, 'ADN')
con.add(q2. 'ADN')
(id=1 or age=10) AND (size>10 and name=root)
23 Django--Q的使用的更多相关文章
- django Q和F查询
Q查询——对对象的复杂查询F查询——专门取对象中某列值的操作 Q查询1.Q对象(django.db.models.Q)可以对关键字参数进行封装,从而更好地应用多个查询,例如: from django. ...
- Python学习笔记23:Django构建一个简单的博客网站(一个)
在说如何下载和安装Django,本节将重点讨论如何使用Django站点. 一 新建project 命令:django-admin startproject mysite # 有的须要输入:django ...
- Django Q对象
使用Q 对象进行复杂的查询¶ filter() 等方法中的关键字参数查询都是一起进行“AND” 的. 如果你需要执行更复杂的查询(例如OR 语句),你可以使用Q 对象. Q 对象 (django.db ...
- django Q条件
#q条件from django.db.models import Qq = Q(name__startswith="p") | Q(name__startswith="l ...
- 23.Django基础
Django基本配置 Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Se ...
- Django常见问题
1.什么是中间件? 中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出. 中间件一般做认证或批量请求处理,django中的中间 ...
- Python Django(WEB电商项目构建)
(坚持每一天,就是成功) Python Django Web框架,Django是一个开放源代码的Web应用框架,由Python写成.采用了MTV的框架模式,即模型M,模板T和视图V组成. 安装Pyth ...
- Django框架理解和使用常见问题
1.什么是中间件? 中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出. 中间件一般做认证或批量请求处理,django中的中间 ...
- Django框架的理解和使用的常见问题
1.什么是中间件? 中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出. 中间件一般做认证或批量请求处理,django中的中间 ...
- Django用法补充
1. 自定义Admin from django.contrib import admin from xx import models # 自定义操作 class CustomerAdmin(admin ...
随机推荐
- 源码编译mariadb
1.写一个一键安装 mariadb 数据库脚本. [root@centos8mini ~]#vim install_mariadb #!/bin/bash#安装包PACKAGE="maria ...
- PowerShell Regex
PowerShell默认按每一行遍历去匹配模式 比如"aaa`nbbb"用"a.*b"是匹配不到的 需要用"(?s)a.*b"来匹配 1. ...
- 【根文件系统 】开发板通过nfs挂载ubuntu上的根文件系统
在此基础上制作可用的根文件系统:https://www.cnblogs.com/hengqiu/p/15908597.html 1.ubuntu搭建nfs服务器 sudo apt-get instal ...
- 【Word】通配符和特殊字符
[Word]通配符和特殊字符 ^p 换行符 正则表达式 使用\转义,用于[]等 参考资料 Word通配符怎么用?使用Word通配符的方法
- 转载-Shell脚本中字符串截取功能
在Shell脚本编写中,有几个地方都是要用到字符串截取的功能,那将这块的内容进行下记录: 1.字符串变量的截取操作 对字符串变量的截取操作一般都是通过${操作符}的方式进行 1)从指定位置index截 ...
- shell脚本变量加减
#! /bin/bash test_1=1 test_2=2 test = $(expr $test_1 - $test_2) #减法 test = $(expr $test_1 + $test_2 ...
- js格式转化
js对象转json数据(json字符串): let obj = {'name': '张三','age': 18} let data = JSON.stringify(obj); conlose.log ...
- 物理核与逻辑核-转 perf
Linux和Windows 物理CPU.物理核.逻辑核--区别.关系和查看 cat /proc/cpuinfo命令部分输出信息的含义 physical id 物理封装的处理器的idprocessor ...
- 代码格式 linux
indent -kr -i8 -ts8 -sob -l80 -ss -bs -psl test.c
- 尝试window10系统下使用appuim获取ios元素
一般来说搞iOS手机的APP自动化需通过Mac电脑,但当前APP出图自动化测试平台是基于windows系统环境开发.如果因iOS APP需要再重新搭建Mac的开发及测试环境,会很大程度上浪费资源,增加 ...