我在網上發現了一個腳本,它可以幫助我更改登錄名,以便同時使用用戶名和電子郵件,而不僅僅是用戶名,但有很多部分我不太瞭解。有人能給我一個例子,這個腳本? django
就像我理解每一行的意思,但我不明白爲什麼這樣做會使我的登錄工作與電子郵件。
class EmailBackend(object):
def authenticate(self, username=None, password=None):
user_cls = get_user_model()
try:
user = user_cls.objects.get(email=username)
if user.check_password(password):
return user
except user_cls.DoesNotExist:
return None
except:
return None
def get_user(self, user_id):
user_cls = get_user_model()
try:
return user_cls.objects.get(pk=user_id)
except user_cls.DoesNotExist:
return None
在此先感謝。
這個腳本中使用的用戶名銜,而不是電子郵件,但是在後端該用戶名必須爲電子郵件用戶'= user_cls.objects.get(電子郵件=用戶名)'您可以更改用戶名電子郵件,沒關係。 – metmirr