Доступ к суперпользователю в стране и модификация Django Auth - PullRequest
1 голос
/ 18 августа 2010

Я хочу предоставить суперпользователю доступ пользователям программы, которую я разрабатываю.

Все сущности имеют значение идентификатора страны, поэтому я просто хочу подключить мою модель пользователя, чтобы иметь идентификатор страны

Глядя на Django Auth, должно быть легко и просто добавить поле super_user_country_id.

Однако, как неодобрительно относится к изменению основных классов django?

Есть ли более простой способ сделать это или?

Ответы [ 2 ]

1 голос
/ 18 августа 2010

Добавление пользовательского UserProfile было бы одним из способов сделать это.UserProfile может ссылаться на Country, и вы можете запретить пользователям их UserProfile.Я нашел статью Джеймса Беннетта о расширении модели User полезной, когда у меня было похожее требование.

Как правило, не рекомендуется исправлять auth (или другие встроенные) классы.Пользовательские патчи могут стать проблемой для поддержания и обновления.

1 голос
/ 18 августа 2010

На данный момент рекомендуется создать модель Profile и связать ее с моделью User с OneToOneField или ForeignKey (в зависимости от ваших требований). Вот хороший учебник по теме.

Разработчики Django неоднократно заявляли о своем намерении сделать расширение модели User более простым, но AFAIK, конкретный проект пока не предлагался.

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