您可以通过以下方式获得Human
拥有(至少)一个Jacket
的的查询集:
Human.objects.filter(jacket__isnull=False).distinct()
之所以有效,是因为我们LEFT OUTER JOIN
在Jacket
模型上创建了一个,然后滤除了与不相关的Jacket
那些jacket__isnull=False
。通过使用,.distinct()
我们可以防止Human
多次返回同一值(每个相关一次Jacket
)。
在查询中,它使用related_name_query
来引用相关对象,默认情况下,该对象是小写的模型名称。如果related_name
指定了a ,它将使用related_name
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句