私は論文のモデルを持っている:複雑なDjangoのクエリ
class Person(models.Model):
position = models.CharField(max_length=64)
group = models.ForeignKey('Group')
class Group(models.Model):
...
今、私は私に、各グループ内のすべての者が位置労働者を持っているすべての個別Group
をお返ししますクエリをしたいです。だから私はそれらの中に労働者だけを持つすべてのグループを持つでしょう。どうやってするか?
私が使用を開始:
groups = Group.objects.filter(person__position='worker').distinct()
しかし、これで私は労働者でない者を持っているグループがあります。
例えば、私のクエリは、グループ1を返すはずですがないグループ2:http://docs.djangoproject.com/en/dev/topics/db/aggregation/
が、私は正確な構文を思い出すことはできませんが、それぞれに注釈を付けることができる必要があります:注釈に
group1
person1 -> position=worker
person2 -> position=worker
person3 -> position=worker
group2
person4 -> position=worker
person5 -> position=looser
person6 -> position=sleeper
「グループ」モデルは、「位置」が「ワーカー」と等しいだけで、他の値はないことを意味しますか? –
まさに!私は私の質問に、より明確な例を加えました。 – Etienne