Django запрос «многие ко многим» для нулевых записей в связанной модели - PullRequest
3 голосов
/ 21 февраля 2012

Использование стандартной примерной модели Django для отношений M2M.Я хотел бы вернуть список Person (людей), у которых нет Membership (т. Е. Нет связанных записей в таблице Membership. Как мне это сделать? Кто-нибудь может указать мнев правильном направлении?

class Person(models.Model):
    name = models.CharField(max_length=128)

class Group(models.Model):
    name = models.CharField(max_length=128)
    members = models.ManyToManyField(Person, through='Membership')

class Membership(models.Model):
    person = models.ForeignKey(Person)
    group = models.ForeignKey(Group)
    date_joined = models.DateField()
    invite_reason = models.CharField(max_length=64)

Спасибо.

1 Ответ

2 голосов
/ 31 мая 2012
Person.objects.filter(membership__isnull=True)

https://docs.djangoproject.com/en/1.4/ref/models/querysets/#isnull

...