Что эквивалентно ManyToMany "через модель" на ForeignKey? - PullRequest
0 голосов
/ 11 января 2020

У меня есть следующие модели:

class ListA(models.Model):
     people = models.ManyToManyField(People, through=ListAMembership)

class ListB(models.Model):
      pass

class People(models.Model):
     name = models.CharField()
     listb_membership = models.ForeignKey(ListB)

class ListAMembership(models.Model):
     date_joined = models.DateTimeField()
     list = models.ForeignKey(ListA)
     person = models.ForeignKey(People)

class ListBMembership(models.Model):
     date_joined = models.DateTimeField()

Вот условия:

Список A

  • ListA объекты может иметь много людей, и People объекты могут быть на многих объектах ListA
  • Подробности членства между People и ListA записаны в ListAMembership

Список B

  • ListB объектов может иметь много людей, но каждый Person может быть только на одном ListB объектах

Как лучше всего чтобы записать дополнительные сведения, касающиеся членства в ListB, способом, которым ListA использует through для доступа к date_joined в ListAMembership?

Я знаю, что могу просто добавить поля к People относительно ListBMembership , но есть ли более чистый способ отделить детали этих отношений?

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