如何进行Django中关联查询set.all() 方法的使用

发布时间:2021-12-08 16:16:41 作者:柒染
来源:亿速云 阅读:323

本篇文章给大家分享的是有关如何进行Django中关联查询set.all() 方法的使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

比如说有a b c三张表关系如下 a是b的父表,b是c的父表
a <----- b  <------c
Module  <----- privilegegroup <----  privilege 

通过父表获取对应的子表的全部

JOIN。 Blog 的name 为'Beatles Blog' 的Entry 对象:

>>> ..='Beatles Blog'Blog 对象,它们至少有一个Entry 的headline 包含'Lennon': 
		>>> ..='Lennon'NULL)但是合法的对象。..='Lennon'Author 模型),如果Entry 中没有找到对应的author,那么它将当作其没有name,而不会因为没有author 引发一个错误。isnull 的时候。..=TrueBlog 对象包括author __name 为空的Blog对象,以及author__name不为空但author__name关联的entry __author 为空的对象。..=False=TrueManyToManyField 或反向的ForeignKey 来过滤一个对象时,有两种不同种类的过滤器。Blog/Entry 关联关系(Blog 和 Entry 是一对多的关系)。Blog 相关联的多个Entry,所以这两个查询在某些场景下都是有可能并有意义的。 
				ManyToManyField 有类似的情况。Entry 有一个ManyToManyField 叫做 tags,我们可能想找到tag 叫做“music” 和“bands” 的Entry,或者我们想找一个tag 名为“music” 且状态为“public”的Entry。 
				filter() 调用。filter() 调用中的所有参数会同时应用以过滤出满足所有要求的记录。filter() 调用进一步限制对象集,但是对于多值关系,它们应用到与主模型关联的对象,而不是应用到前一个filter() 调用选择出来的对象。 
				..='Lennon'=2008..='Lennon'.=2008Blog,而不是Entry。 
				filter() 查询的行为,与exclude() 实现的不同。exclude() 调用中的条件不必引用同一个记录。 
					..='Lennon'=2008filter() 的行为不同,它不是排除同时满足两个条件的Entry。..=..='Lennon'=2008, ), )

以上就是如何进行Django中关联查询set.all() 方法的使用,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

推荐阅读:
  1. 使用Django怎么实现MySQL读写分离
  2. 怎么在python django框架里搭建环境

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

django

上一篇:如何分析Django中编写自定义模板标签tags和过滤器

下一篇:基于Django3.0的web框架详细架构过程是怎么样的

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》