我有两个这样的模型:
class AA(models.Model):
name = models.CharField()
state = models.IngerField()
class BB(models.Model):
aa_id = models.ForeignKey(AA)
我的问题是:
如何获取状态为10且不在BB中的所有对象AA?
在SQL我做这样的事情:
select * from AA
where AA.state = 10 and AA.id not in (select aa_id from BB)
要么
select * from AA
left join BB on BB.aa_id = AA.id
where AA.state = 10 and BB.id is null
我知道我可以获取所有AA对象,并逐一检查BB是否具有外键。但这不是正确的事情。
谢谢。
最佳答案
像这样:
AA.objects.filter(state=10, bb=None)
关于django - Django获取未由外键引用的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4758319/