Django симметричное поле ManyToMany на 2 столбца

В моей модели, как явно указать, что я хочу, чтобы отношение ManyToMany с другим столбцом было симметричным, чтобы при вызове object_set из каждого объекта он мог проходить через одну и ту же таблицу базы данных, чтобы найти отношения?

Пример

class Person(models.Model):
    name = models.CharField(max_length=100)
    employer = models.ManyToManyField(Organization)

class Organization(models.Model):
    name = models.CharField(max_length=100)

Нужно ли создавать второй ManyToManyField в классе Organization, чтобы сделать что-то вроде

org1.person_set.all()

чтобы получить всех лиц, нанятых организацией и

pers1.organization_set.all()

получить все организации, в которых человек может работать? Или один ManyToManyField будет симметрично создавать отношения?

1 ответ

Решение

Вам не нужно ничего делать.

Поскольку ManyToMany размещен с Person, это будет:

pers1.employer.all()

а также

org1.person_set.all()
Другие вопросы по тегам