Расширьте пользовательскую модель Django с настраиваемыми полями, получателями и бэкэнд

Я разрабатываю приложение Django (v1.6) и должен выполнять несколько действий с пользователями:

  • Добавить пользовательские поля, такие как внешний ключ для пользовательского отдела
  • Изменение базы данных Trigger при изменении определенных полей. Например, когда изменяется пользовательский отдел, мне нужно переместить инвентарь в другую модель из старого отдела и в новый. Я планировал использовать приемник pre_save для этого.
  • Определите пользовательские разрешения, например, пользователь может изменять только строки в таблице, связанные с их отделом.
  • В конце концов я хочу интегрировать приложение с нашим сервером Active Directory для аутентификации.

Я просмотрел параметры в документации и вижу, что существует несколько вариантов: от расширения пользовательской модели с помощью взаимного доступа отношение к написанию пользовательской модели пользователя.

Какой дизайн следует использовать для удовлетворения всех вышеуказанных целей?

2 ответа

Взгляните на это сообщение в блоге: он обеспечивает все принципы дизайна для достижения ваших целей. http://www.roguelynn.com/words/django-custom-user-models/

Я также хотел бы посмотреть здесь дополнительную информацию о настраиваемых пользовательских моделях, если вы хотите иметь собственную схему аутентификации: http://procrastinatingdev.com/django/using-configurable-user-models-in-django-1-5/


Я также нашел следующую справочную информацию: http://www.sofokus.com/blogi/custom-user-model/

licensed under cc by-sa 3.0 with attribution.