首页 > 其他分享 >Django:F对象和Q对象

Django:F对象和Q对象

时间:2024-08-19 23:27:43浏览次数:8  
标签:__ gt 对象 NewsInfo Django filter objects

一、F对象

之前的查询都是对象的属性与常量值比较,两个属性怎么比较呢?

作用:用于类属性之间的比较

# 使用之前需要先导入
from django.db.models import F
# 查询阅读量大于等于评论量的新闻
NewsInfo.objects.filter(read__gte=F('comment'))

可以在F对象上使用算数运算

# 查询阅读量大于2倍评论量的图书
NewsInfo.objects.filter(read__gt=F('comment') * 2)

二、Q对象

作用:用于查询时条件之间的逻辑关系。 and or not,可以对Q对象进行& | ~ 操作
# 使用之前需要先导入
from django.db.models import Q

逻辑与(and) :&

# 查询阅读量大于300且评论量大于10的新闻的数据
# 不使用Q对象
NewsInfo.objects.filter(read__gt=300,comment__gt=10)

# 使用Q对象
NewsInfo.objects.filter(Q(read__gt=3)&Q(comment__gt=10))

逻辑或(or) : |

# 查询id大于3或者阅读量大于30的新闻的信息
NewsInfo.objects.filter(Q(read__gt=3)|Q(comment__gt=10))

逻辑非(not) : ~

# 查询id不等于2的新闻信息
NewsInfo.objects.filter(~Q(id=2))

 

Django:基础查询语法

标签:__,gt,对象,NewsInfo,Django,filter,objects
From: https://www.cnblogs.com/Durant0420/p/18368338

相关文章

  • Django:查询基础语法
    一、数据准备1、在models.py中定义一个新闻和新闻类型的模型类classNewsInfo(models.Model):"""新闻表"""title=models.CharField(max_length=100,help_text='新闻标题',verbose_name='新闻标题',blank=True,default='')content=m......
  • 高校爬虫可视化系统-基于python|Django|flask的高校爬虫可视化系统|大学数据抓取与展
    博主介绍:✌十余年IT大项目实战经验、在某机构培训学员上千名、专注于本行业领域✌技术范围:Java实战项目、Python实战项目、微信小程序/安卓实战项目、爬虫+大数据实战项目、Nodejs实战项目、PHP实战项目、.NET实战项目、Golang实战项目。主要内容:系统功能设计、开题报告......
  • C# x Unity面向对象补全计划 设计模式 之 实现一个简单的有限状态机
    一个简单的有限状态机可以有如下内容1.状态基类(定义基本状态的方法,如进入(Enter)、执行(Execute)和退出(Exit),同时可以在此声明需要被管理的对象)2.具体状态类(定义具体状态,如:跳跃,行走,待机,每个具体状态类继承自状态基类)3.管理状态类(负责管理状态的切换逻辑,确保在不同状态之间进行......
  • python基础语法 010 类和对象-6-1 继承定义
    前提:    在真实世界中,类型之间可能存在范围包含关系,比如:人这个类型和亚洲人这个类型。        人是包括了亚洲人的,如果某人是员工亚洲人,那么它必定是一个人        这种关系,在编程语言中称为继承关系        比如上面例子:亚洲人这个类就继......
  • 基于django+vue框架的实时新闻推送平台edpjq【开题报告+程序+论文】计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在信息爆炸的时代,新闻资讯的时效性成为了媒体竞争的关键。随着互联网技术的飞速发展,人们获取新闻的方式已从传统的报纸、电视转向了手机、......
  • 基于django+vue框架的教学资源管理系统【开题报告+程序+论文】计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展,教育领域正经历着前所未有的变革。传统的教学模式逐渐向数字化、网络化、智能化方向转型,教学资源管理系统作为教育......
  • 基于django+vue框架的动漫视频网站6ygmo【开题报告+程序+论文】计算机毕
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着互联网的飞速发展和数字媒体技术的不断进步,动漫文化在全球范围内迅速普及,成为年轻人喜爱的文化形式之一。动漫视频网站作为传播动漫内......
  • 基于django+vue快递代取小程序小程序2【开题报告+程序+论文】计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在数字化时代,快递服务已成为连接消费者与商家的关键桥梁。然而,随着快递量的激增和人们生活节奏的加快,许多用户面临快递无法及时收取的困境......
  • Java中的可达性分析算法图解,以及哪些对象可以作为GCRoots
    可达性分析算法图示:解释:因为在GCRoots中存在对于对象A的引用,而A又持有对对象B和对象C的引用,所以这一串都是有用的引用链,需要保留。对于对象D和对象E,他们只是相互进行引用,并没有和GCRoots中的对象有任何的关联,所以可以安全的回收。哪些对象可以作为GCRoots虚拟机栈(栈帧中的......
  • Django 关系字段类型
    关系型数据库的关系包括三种类型:ForeignKey:一对多,将字段定义在多的一端中。#一个多对一的关系。需要两个位置参数:模型相关的类和on_delete选项。goods=models.ForeignKey('Goods',on_delete=models.CASCADE)ManyToManyField:多对多,将字段定义在任意一端中。use......