所以,我挣扎在以下情况:查询其父母有孩子在Django
考虑车型:
class A(models.Model):
foo = models.IntegerField(default=0)
class B(models.Model):
a_models = models.ForeignKey('A', related_name='b_models')
bar = models.IntegerField(default=0)
class bChild(B):
bla = models.IntegerField(default=0)
,如果我有一个,a_instance一个实例,我想检索的与它的关系在B类的所有实例,我可以用
all_b_models = a_instance.b_models.all()
我的问题是:
:如果我想只检索也有bChilds的那些什么all_bChild_models = a_instance.b_models.filter(???)
我应该在“???”中放什么?
我没有找到任何文档。有一件事我觉得工作原理是利用:
??? = pk__in=bChild.objects.all().values_list('pk')
然而,由于Django的创建多表继承隐式的落后的关系,我想知道是否有一个更简单的查询。
感谢, 豪尔赫
好吧,我不知道有关过滤的“a_models”......在任何情况下,你能重新表达第一句话吗?我不明白你的意思... –
对不起,我的坏..我打算问你为什么你想直接在a_instance上查询,当你可以直接在bChild表上直接进行查询时。 –