2012-06-20 3 views
2

인증을 위해 사용자 이름 대신 전자 메일을 사용하기 위해 django-email-as-username 응용 프로그램을 사용하고 있으며 매력처럼 작동합니다.Django, 사용자 이름 대신 전자 메일이있는 경우 "is_authenticated()"를 재정의합니다.

지금, 보기에 나는

if request.user.is_authenticated() 

전화를 원하지만이 방법은 (사용자 이름 + 비밀번호)과하지 (이메일 + 비밀번호)를 기반으로 사용자를 인증합니다. 어떻게해야합니까?

의견이 있으십니까?

답변

3

장고에서 is_authenticated() 항상 User 인스턴스에 대한 True 반환 항상 AnonymousUser 인스턴스에 대한 False 반환합니다. 그것은 사용자 이름/비밀 번호/이메일과 아무 상관 없으며 django-email-as-username는이 동작을 변경하지 않습니다.

참조 장고의 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 
+0

오 .. 아주 .. 감사합니다 Secator – Soask