ユーザー名ではなく電子メールフィールドに基づいてユーザーを認証するカスタム認証ミドルウェアを作成しましたが、スーパーユーザー/スタッフの電子メールを使用して Django の管理パネルにログインできなくなりました。
def authenticate(self, username=None, password=None):
# Passing email as username
try:
user = User.objects.get(email=username)
if user.check_password(password):
return user
except User.DoesNotExist:
return None
def get_user(self, user_id):
# Get User Object from user_id
try:
return User.objects.get(pk=user_id)
except User.DoesNotExist:
return None
誰かがこれを通して私を助けることができれば素晴らしいでしょうか?