Django не аутентифицирует пользователя
Я только что обновил django, с 1.11 до 3.2, и мой пользовательский бэкенд аутентификации теперь не работает.
settings.py:
AUTHENTICATION_BACKENDS = (
'apps.base.auth.PasswordlessAuthBackend',
...
)
apps/base/auth.py:
class PasswordlessAuthBackend(BaseBackend):
def authenticate(self, username):
try:
return User.objects.get(username=username)
except:
return None
def get_user(self, user_id):
try:
return User.objects.get(pk=user_id)
except User.DoesNotExist:
return None
views.py:
def test_login(request):
my_username = 'my_user'
authorized_user = authenticate(username=my_username)
print(authorized_user)
u = User.objects.get(username=my_username)
print(u.username)
Вывод из views.py:
None
my_username
Я перепробовал все и никак не могу разобраться с этим. Я уверен, что это загрузка класса PasswordlessAuthBackend, поскольку если я изменю его имя, то получу ImportError в settings.py.