2017-02-07 6 views
1

Я разрабатываю приложение в Django, которое использует существующую базу данных с созданными пользователями. Я установил параметры конфигурации своей базы данных на сервер PostgreSQL, и я выполняю свои пользовательские запросы через библиотеку «connections».Как использовать пользовательский сервер Django?

Проблема возникает, когда я хочу использовать свою собственную таблицу для аутентификации пользователей. Я видел много учебников и сообщений в блогах, и я переписал свой сервер аутентификации. Но когда я хочу использовать свою собственную таблицу для аутентификации пользователей и установки сеансов, Framework Django позволяет мне использовать объект User.

Я думаю, что этот объект связан с таблицами Django в базе данных, и когда я хочу аутентифицировать пользователя, я вижу сообщение о том, что отношение «auth_user» не существует. Это означает, что объект User связан с этой таблицей.

Существует ли какой-либо метод использования моей таблицы с использованием аутентификации Django или я должен использовать ее?

ответ

1

Чтобы использовать пользовательскую модель Django с существующей Django входа бэкэндом

AUTH_USER_MODEL = 'myapp.MyUser'

Django docs

Чтобы использовать пользовательские Джанго аутентификации бэкэнд

AUTHENTICATION_BACKENDS = 'myBackend'

Django docs

+0

Я обнаружил это самостоятельно, но это не так гибко, как я хочу. На самом деле, если я укажу AUTH_USER_MODEL = 'myUser' с полях электронной почты, пароль. В базе данных Django создает таблицу с идентификаторами полей, last_login, email и паролем. То, что я хочу сделать, это ommit id и last_login и установить адрес электронной почты в качестве первичного ключа. @iklinac, ваш ответ был прав, но я пытаюсь исправить этот аспект моего приложения. Любое предложение? – Marco