Почему django не делает для модели User то же самое, что делает для модели userprofile? - PullRequest
0 голосов
/ 16 февраля 2010

Почему в django не настроена модель для пользователя, настроенная в файле настроек?

Требования к указанной модели должны состоять в том, чтобы она содержала определенный набор полей.

Есть ли причина, по которой это невозможно сделать таким образом?

Ответы [ 2 ]

2 голосов
/ 16 февраля 2010

Модель User имеет много зависимостей и должна соответствовать разнообразному набору требований API для взаимодействия с остальной частью инфраструктуры django. Это из-за его связи с аутентификацией и авторизацией. Изменение User означает изменение ожидаемого поведения contrib.auth. Если вы хотите сделать это, вы можете, и это настраивается в settings.py.

Скорее всего, вы хотите настроить дополнительные метаданные, связанные с пользователями. Эта дополнительная информация никак не связана с аутентификацией, поэтому ее можно настроить отдельно, не влияя на contrib.auth. Чтобы облегчить управление зависимостями, это делается в отдельной модели. Это дает дополнительное преимущество, заключающееся в том, что различие между данными, зависящими от авторизации, и пользовательскими метаданными для конкретного сайта становится гораздо более четким.

0 голосов
/ 16 февраля 2010

«Почему у django просто не указана модель для использования пользователем в файле настроек?»

У меня есть сайт, на котором не нужны пользователи, логин или аутентификация.

Я не хочу модель для пользователя.

Для поддержки всех с такими приложениями, как мое, пользователь необязателен.

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