我正在使用django-email-as-username
应用使用电子邮件而非用户名进行身份验证,而且它就像魅力一样。
现在,在视图中,我想调用
if request.user.is_authenticated()
但是此方法只是根据(用户名+密码)而不是(电子邮件+密码)对用户进行身份验证。我该怎么处理这个?
有什么建议吗?
答案 0 :(得分:3)
在Django中,is_authenticated()
始终为True
个实例返回User
,并始终为False
个实例返回AnonymousUser
。它与用户名/密码/电子邮件无关,django-email-as-username
不会改变此行为。
请参阅Django的source code:
# In User class line 279
def is_authenticated(self):
"""
Always return True. This is a way to tell if the user has been
authenticated in templates.
"""
return True