千家信息网

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

发表于:2024-10-25 作者:千家信息网编辑
千家信息网最后更新 2024年10月25日,本篇文章给大家分享的是有关如何进行Django中关联查询set.all() 方法的使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。比如
千家信息网最后更新 2024年10月25日如何进行Django中关联查询set.all() 方法的使用

本篇文章给大家分享的是有关如何进行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() 方法的使用,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

0