说我有一个
的模型class Bottles(models.Model)
BottleCode = models.IntegerField()
class Labels(models.Model)
LabelCode = models.IntegerField()
如何获得BottC的查询集,其中BottleCode和LabelCode相等? (不包括没有共同代码的瓶子和标签)
答案 0 :(得分:2)
可以通过extra()
:
Bottles.objects.extra(where=["Bottles.BottleCode in (select Labels.LabelCode from Labels)"])
您可能还需要在表名中添加应用名称前缀,例如app_bottles
代替bottles
。
虽然@danihp在这里有一点意义,但如果您经常遇到这样的问题,当您尝试关联不相关的模型时 - 您应该考虑更改模型设计。