Python Django,查询相关字段:存在符合条件的相关字段
假设您有问答模型 我希望问题的答案既不被删除也不被审查。Python Django,查询相关字段:存在符合条件的相关字段,python,django,django-queryset,Python,Django,Django Queryset,假设您有问答模型 我希望问题的答案既不被删除也不被审查。 (我想要以下函数返回True的问题。) 假设模型是问题,并且它有答案字段: Question.objects.filter(answers__deleted=False, answers__is_inreview=False) @falsetru:exists()的返回类型是布尔值?是的,exists()返回True或False。啊,我想要查询集结果,或者至少是问题对象。相关的,有一些解释:真的那么简单吗?awesome@eugene,
(我想要以下函数返回True的问题。)
假设模型是
问题
,并且它有答案
字段:
Question.objects.filter(answers__deleted=False, answers__is_inreview=False)
@falsetru:exists()的返回类型是布尔值?是的,
exists()
返回True或False。啊,我想要查询集结果,或者至少是问题对象。相关的,有一些解释:真的那么简单吗?awesome@eugene,是的,您可以使用related_model__field=blah
关键字参数来使用相关模型的字段。shot,我刚刚意识到我的not_deleted()更复杂def not_deleted(self):返回self.filter(Q(main_post_uuisnull=True)| Q(main_post_udeleted=False)
..@eugene,相应地更新条件:Question.objects.filter((Q(main_post_uisnull=True)| Q(main_post_udeleted=False)&Q(answers_udeleted=False)&Q(answers_uis_uinreview=False)
@eugene),这取决于main\u post
字段所属的位置。如果是答案的字段
,则是。顺便说一下,main\u post\u isnull=True
可以表示为main\u post=None
。
Question.objects.filter(answers__deleted=False, answers__is_inreview=False)