Django - вход по электронной почте

Если вы начинаете новый проект, django django настоятельно рекомендует django вам настроить собственную django модель пользователя. (см. https://docs.djangoproject.com/en/dev/topics/auth/customizing/#using-a-custom-user-model-when-starting-a-project)

и django если вы это сделали, добавьте django три строчки в вашу модель django пользователя:

class MyUser(AbstractUser):
    USERNAME_FIELD = 'email'
    email = models.EmailField(_('email address'), unique=True) # changes email to unique and blank to false
    REQUIRED_FIELDS = [] # removes email from REQUIRED_FIELDS

Тогда authenticate(email=email, password=password) работает, а django authenticate(username=username, password=password) перестает работать.

django

2022-11-18T10:56:36+00:00