Степаненко Ольга a6ceae8240 Pylint 10
2021-05-12 20:34:52 +03:00

32 lines
1011 B
Python

"""
Авторизация пользователя.
"""
from django.contrib.auth.backends import ModelBackend
from django.contrib.auth import get_user_model
class EmailAuthBackend(ModelBackend):
"""
Класс авторизации пользователя по email.
"""
def authenticate(self, request, username=None, password=None, **kwargs):
"""
Функция получения пользователя (модель User) по email.
"""
try:
user = get_user_model().objects.get(email=username)
if user.check_password(password):
return user
return None
except get_user_model().DoesNotExist:
return None
def get_user(self, user_id):
"""
Функция получения пользователя по id.
"""
try:
return get_user_model().objects.get(pk=user_id)
except get_user_model().DoesNotExist:
return None