Как найти объекты с общим объединением? - PullRequest
0 голосов
/ 10 ноября 2009

Как мне найти всех участников, с которыми у Боба есть группа?

class Member(Model):
     name = CharField(max_length=30)

class GroupMember(Model):
     member = ForeignKey(Member)
     group  = ForeignKey(Group)

class Group(Model):
     name = CharField(max_length=30)

1 Ответ

1 голос
/ 10 ноября 2009
Member.objects.filter(group__in=bob.group_set.all()).exclude(pk=bob.pk)

Редактировать Я не заметил, что у вас не установлены отношения ManyToMany между участником и группой. Вам нужно добавить это:

class Group(Model):
   name = CharField(max_length=30)
   members = ManyToManyField(Member, through='Membership')

теперь syncdb и должно работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...