Итак, я довольно новичок в Django и знаю, что есть только один тип User
. Мне интересно, как лучше всего настроить go для настройки моих моделей.
Моему сайту нужны 4 разных типа пользователей: администраторы (включая суперпользователя), учителя, студенты, родители. Я хочу, чтобы только администратор мог использовать встроенный интерфейс администратора. Я хочу, чтобы у учителей были некоторые функции администратора, но только во внешнем интерфейсе пользователя.
До сих пор я расширил AbstractBaseUser и BaseUserManager для создания пользователей, которым можно назначить 4 роли, упомянутые выше, и несколько разных вещей. Они работают, и я могу управлять с ними авторизацией просмотров страниц, но это лишь поверхностное представление о том, что я надеюсь сделать.
Но как мне это сделать, если я хочу, чтобы у учителя было много учеников? класс и видеть только тех студентов, когда они входят в систему? Я хочу, чтобы эти студенты были назначены учителем администратором, а затем разрешить учителю иметь некоторые разрешения с информацией об ученике.
Могу ли я использовать сигналы для создания Teacher
модели, которая принадлежит User
с role
учителя и той же Teacher
моделью has_many``
Студент s. The ``Student
также был бы создан мгновенно с User
, имеющим role
student
.
Я размышляя о том, как бы вы создали Profile
с новым User
.
Я знаю, как связать учителей, учеников и родителей и т. д. c, но меня смущает, когда они также все типы пользователей.
Или есть способ сделать это, просто оставив их как `` Users``` с ролями и связав их по-другому?
Спасибо за помощь .