Из документации о django.contrib.auth.authenticate
функции мы находим -
Используйте authenticate () для проверки набора учетных данных. Он принимает учетные данные в качестве аргументов ключевых слов, имя пользователя и пароль для случая по умолчанию, проверяет их по каждому бэкэнду аутентификации и возвращает объект User, если учетные данные действительны для бэкэнда.
Теперь мой вопрос: что они подразумевают под именем пользователя?
- Это имя столбца модели?
- Или это первичный ключ модели?
На самом деле, я был отправка электронной почты в качестве имени пользователя, потому что я хотел проверить учетные данные на основе электронной почты (первичный ключ), а не имени пользователя (что бы это ни значило), но это не сработало ... Но я назвал один из столбцов моей модели имя пользователя но это все равно не сработало ... Итак, мне интересно, что они подразумевают под username точно.
Мой код, который не работал -
email = request.POST['email']
#email = request.POST['username'] Changed email column-name to username but didn't work!
password = request.POST['password']
user = authenticate(request, username=email, password=password)
print (user) ## None