在Django的模型中F对象与Q对象比较常用的,所以单独说一下:

F对象

F对象位于django.dc.models模板下,使用的时候记得首先导入!!!

作用:F对象主要用于当模型的字段A与字段B进行比较的时候,如果A写在了等号的左边,则B 出现在等号的右边,通过F对象进行构造,用于两个列的比较。举个例子:

假设有数据模型类BookInfo,BookInfo中有属性read和commet,我们要找到阅读量(read)比评论量(commet)多的图书
BookInfo.objects.filter(read__gt=F('commit'))#返回一个集合

F对象使用在两个列之间的比较。

Q对象

Q对象位于django.dc.models模板下,使用的时候记得首先导入!!!

在实现逻辑或的操作时必须使用Q对象,话不多说直接上Demo


假设有数据模型类BookInfo,BookInfo中有属性title,我们要找主键小于6或者题目中包括1的书
BookInfo.objects.filter(Q(pk__lt=6)|Q(title__contains="1"))#返回符合条件的 ​​ ​

比较运算符:实现where 语句作为filter() exclude() get()的参数

语法:属性名称__运算符=值(是两个下滑线)

常见的运算符:

 exact 判断,大小写敏感
contains 是否包含,大小写铭感
startwith 以什么值开头,大小写敏感
endwith 以什么值结束,大小写敏感
in 是否在哎包含的范围内 如 filter(pk__in=[2,4,6,8,])
以上四个前面加上i就不区分大小写 iexact,icontains,istaerwith,iendwith

比较运算符:

gt 大于
gte 大于等于
lt 小于
lte 小于等于

Django中F对象,Q对象与运算符的更多相关文章

  1. django的F和Q对象

    F表达式和Q表达式: # 示例模型如下 class Book(models.Model): """图书模型""" name = models ...

  2. Django运算表达式与Q对象/F对象

    Django运算表达式与Q对象/F对象 1 模型查询 概述: 1 查询集:表示从数据库中获取的对象的集合 2 查询集可以有多个过滤器,通过 逻辑运算符连接 3 过滤器就是一个函数,基于所给的参数限制查 ...

  3. 【转】Django之Model层的F对象,Q对象以及聚合函数

    转自:https://blog.csdn.net/wsy_666/article/details/86692050 一.F对象: 作用:用于处理类属性(即model的某个列数据),类属性之间的比较.使 ...

  4. Django之F和Q查询

    一.F查询 rom django.db.models import F from app01.models import Book Book.objects.update(price=F(" ...

  5. Django之F与Q查询

    F查询 from django.db.models import F,Q # 1.查询库存数大于卖出数的书籍 res = models.Book.objects.filter(kucun__gt=F( ...

  6. django之 F与Q查询

    F与Q查询 F查询 why?

  7. Django之F、Q查询,事务,自定义char字段

    F查询 from django.db.models import F,Q # 当查询条件来自于数据库的某个字段,这个时候就必须使用F # 查询卖出数大于库存数的商品 res = models.Prod ...

  8. django【F和Q】

    一.F 案例每人增加500工资 ORM:UserInfo.objects.filter().update(salary=500) 这不行吧 SQL: update userinfo set salar ...

  9. Django中更新多个对象数据与删除对象的方法

    更新多个对象 例如说我们现在想要将Apress Publisher的名称由原来的”Apress”更改为”Apress Publishing”.若使用save()方法,如: ? 1 2 3 >&g ...

随机推荐

  1. 【NX二次开发】Block UI 从列表选择部件

    属性说明 属性   类型   描述   常规           BlockID    String    控件ID    Enable    Logical    是否可操作    Group    ...

  2. 【NX二次开发】不健全的双击按钮。

    为什么说不健全,是因为 双击按钮时会先运行单击事件,这个后面再解决.但是模仿某公司的图层操作工具是没有问题了,因为这个工具运行双击事件时本来就需要运行单击事件,不仔细看容易被唬住. 图层操作工具(双击 ...

  3. 三、WPF入门教程——布局和常用Panel学习

    布局和常用Panel学习 一.简介 所有的WPF布局容器都派生自System.Windows.Controls.Panel.Panel继承自FrameworkElement. 在Panel中有一个比较 ...

  4. csp-s模拟测试50(9.22)「施工(单调栈优化DP)」·「蔬菜(二维莫队???)」·「联盟(树上直径)」

    改了两天,终于将T1,T3毒瘤题改完了... T1 施工(单调栈优化DP) 考场上只想到了n*hmaxn*hmaxn的DP,用线段树优化一下变成n*hmaxn*log但显然不是正解 正解是很**的单调 ...

  5. Binding(二):控件关联和代码提升

    上节我们讲到,使用Binding,我们可以关联后台代码中的属性,在某些情况下,我们可能需要将两个控件关联起来,借助Binding,我们也可以轻松的实现. 关联控件 设想这样一个场景,界面中有个Chec ...

  6. Python变量小秘密

    变量全都是引用 跟其他编程语言不同,Python的变量不是盒子,不会存储数据,它们只是引用,就像标签一样,贴在对象上面. 比如: >>> a = [1, 2, 3] >> ...

  7. WEB安全新玩法 [6] 防范图形验证码重复使用

    在完成关键业务操作时,要求用户输入图形验证码是防范自动化攻击的一种措施.为安全起见,即使针对同一用户,在重新输入信息时也应该更新图形验证码.iFlow 业务安全加固平台可以加强这方面的处理. 某网站系 ...

  8. kubernetes ceph-csi分析

    概述 最近在做分布式存储ceph接入kubernetes,用的是csi这一套,在开发的过程中,自己也用有道云笔记做过一些ceph-csi相关的源码分析.知识总结之类的记录,刚好自己又萌生了发博的想法, ...

  9. excel VBA根据一列的逗号隔开值分行

    Sub test1()    Dim h    Dim j As Integer    j = 0    Dim n1 As Integer '分行单元格在第几列    Dim m1 As Integ ...

  10. excel VBA构造正则函数(双参数)

    Function zhengze(ze As String, Rng As Range)    Set regx = CreateObject("vbscript.regexp") ...