Django中F对象,Q对象与运算符

在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  小于等于

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值