Как указать много к одному модели в Django? - PullRequest
0 голосов
/ 31 октября 2019

Я пытаюсь связать две модели: Department и User. Они имеют отношение многие к одному. department может иметь только admin (пользователь), а department может иметь много пользователей. A User может быть только в одном отделе.

Вот мой код

class Department(models.Model):
    admin    = models.ForeignKey("applications.User", blank=True, null=True, on_delete=models.SET_NULL)


class User(AbstractUser, models.Model):
    username      = models.CharField(max_length=32, unique=True)
    department    = models.ForeignKey(Department, null=True, on_delete=models.SET_NULL, related_name="members")

Но у меня появляется эта ошибка:

ERRORS:
applications.Department.admin: (fields.E303) Reverse query name for 'Department.admin' clashes with field name 'User.department'.
        HINT: Rename field 'User.department', or add/change a related_name argument to the definition for field 'Department.admin'.

Мне нужносохраняйте атрибуты именами как есть. Как правильно исправить и смоделировать связь между таблицами?

Предполагает ли Джанго, что в Департаменте может быть много администраторов?

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