Как войти в систему с именем пользователя или электронной почтой в Django |rest_framework_jwt? - PullRequest
0 голосов
/ 21 марта 2019

Я хотел бы войти на страницы с username и email, я написал CustomBackend представление для аутентификации независимо от того, как я изменился, работает только username, я использую «электронную почту» для входа на страницы , всегда получал ошибку Unable to log in with provided credentials, частичный код views.py как показано ниже:

from django.contrib.auth import get_user_model

MyUser = get_user_model()

class CustomBackend(object):
    def authenticate(self, username=None, password=None, **kwargs):
        try:
            user = MyUser.objects.get(Q(username=username)|Q(email=username))
            if user.check_password(password):
                return user

        except MyUser.DoesNotExist:
            MyUser().set_password(password)

частичный код файла settings.py, как показано ниже:

AUTHENTICATION_BACKENDS = (
    'general.views.CustomBackend',
    'django.contrib.auth.backends.ModelBackend'
)

Любые идеи будут высоко оценены.

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