方式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的使用的更多相关文章

  1. django Q和F查询

    Q查询——对对象的复杂查询F查询——专门取对象中某列值的操作 Q查询1.Q对象(django.db.models.Q)可以对关键字参数进行封装,从而更好地应用多个查询,例如: from django. ...

  2. Python学习笔记23:Django构建一个简单的博客网站(一个)

    在说如何下载和安装Django,本节将重点讨论如何使用Django站点. 一 新建project 命令:django-admin startproject mysite # 有的须要输入:django ...

  3. Django Q对象

    使用Q 对象进行复杂的查询¶ filter() 等方法中的关键字参数查询都是一起进行“AND” 的. 如果你需要执行更复杂的查询(例如OR 语句),你可以使用Q 对象. Q 对象 (django.db ...

  4. django Q条件

    #q条件from django.db.models import Qq = Q(name__startswith="p") | Q(name__startswith="l ...

  5. 23.Django基础

    Django基本配置 Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Se ...

  6. Django常见问题

    1.什么是中间件? 中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出. 中间件一般做认证或批量请求处理,django中的中间 ...

  7. Python Django(WEB电商项目构建)

    (坚持每一天,就是成功) Python Django Web框架,Django是一个开放源代码的Web应用框架,由Python写成.采用了MTV的框架模式,即模型M,模板T和视图V组成. 安装Pyth ...

  8. Django框架理解和使用常见问题

    1.什么是中间件? 中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出. 中间件一般做认证或批量请求处理,django中的中间 ...

  9. Django框架的理解和使用的常见问题

    1.什么是中间件? 中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出. 中间件一般做认证或批量请求处理,django中的中间 ...

  10. Django用法补充

    1. 自定义Admin from django.contrib import admin from xx import models # 自定义操作 class CustomerAdmin(admin ...

随机推荐

  1. JS-变量存储

    1.存储(变量)JS中变量是存在栈内存中JS中的内存分两种:栈内存.堆内存 栈内存:存放变量 堆内存:存代码块(object和function) var fn=function()和function ...

  2. flutter 多种情况tabbar高度问题,普通使用和嵌套使用高度问题(Tab)。

    众所周知tabbar的高度是不可改变的.比如我们普通的写一个tabbar. 先上效果图: 代码: Scaffold( appBar: AppBar( title: Text("TabBarD ...

  3. python+接口参数化(ddt和pytest.mark.parametrize())使用

    一.ddt(基于unittest) 实例:字典解包[{},{}] test_data=t.read_excel(mode,case_list)@ddt class Interface(unittest ...

  4. ClickHouse 使用

    最近mysql报表数据太多,要转移数据到 clickHouse ,顺便学学该数据仓库的使用 中文文档:https://clickhouse.com/docs/zh/ B站学习视频 : https:// ...

  5. mariadb 集群 重启的几种情形

    最近项目中遇到过一次mariadb集群中三台节点有两台挂掉的情况.总结了一下mariadb集群可能遇到的几种情况需要重启. 环境说明: mariadb集群ip: 10.0.101.51 10.0.10 ...

  6. 26 docker 安装 solr

    准备一台已经安装过docker的服务器 获得solr镜像 #可以指定版本 docker pull solr:7.5.0docker pull solr:7.7.3 创建数据挂载文件夹 允许访问权限 s ...

  7. Babel与webpack

    一.基础认知1 babel是js编译器,将新版本js代码转换成大多数浏览器支持的es5,es3代码 浏览器其实也不认识require函数,bable配合webpack解决模块的问题: 主要编译的是语法 ...

  8. VsCode——修改左侧目录缩进

    https://code84.com/741691.html https://blog.csdn.net/qq812457115/article/details/124445657

  9. 学习- vue 中 API $attr 用法

    2.4.0新增 定义:包含了父作用域不作为 prop 被识别(且获取)的 attribute 绑定( class 和 style 除外).当一个组件没有声明任何 prop 时,这里会包含所有父作用域的 ...

  10. 统信系统部署es

    rpm -ivh jdk-17.0.4.1_linux-x64_bin.rpm groupadd es && useradd -d /home/es -g es estar -xzvf ...