【发布时间】:2017-07-28 23:41:34
【问题描述】:
我有以下型号:
class Parent(models.Model):
item_involved = models.ManyToManyField(Item, through=ItemInvolved)
class ItemInvolved(models.Model):
parent = models.ForeignKey(Parent, related_name='item_involvement')
item = models.ForeignKey(Item)
kind = models.PositiveIntegerField()
我想检索所有Parents,其中Item 的pk=20 和ItemInvolved 的kind=10。
编辑:
假设我有以下对象:
Parent(pk=1)
Parent(pk=2)
Parent(pk=3)
ItemInvolved(pk=11, parent=1, item=18, kind=10)
ItemInvolved(pk=12, parent=1, item=19, kind=10)
ItemInvolved(pk=13, parent=1, item=20, kind=10)
ItemInvolved(pk=14, parent=2, item=20, kind=10)
ItemInvolved(pk=15, parent=3, item=19, kind=10)
ItemInvolved(pk=16, parent=3, item=20, kind=20)
我需要一个可以产生的查询:
[<Parent: 1>, <Parent: 2>]
【问题讨论】:
-
如果以下任何一个答案对您有所帮助,那么最好接受一个!
标签: django django-models many-to-many django-queryset django-orm