Я пытаюсь связать две модели: 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'.
Мне нужносохраняйте атрибуты именами как есть. Как правильно исправить и смоделировать связь между таблицами?
Предполагает ли Джанго, что в Департаменте может быть много администраторов?