Я хотел бы войти на страницы с 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'
)
Любые идеи будут высоко оценены.