django身份验证总是没有,check_password工作正常

时间:2012-04-26 12:00:55

标签: django

将我的django安装从1.2.3升级到1.4后,我无法再使用authenticate()方法。

check_password()函数可以正常工作,我可以在数据库的正确表中看到加密的密码。

>>> from django.contrib.auth.models import User
>>> u = User(username='joe', password='password')
>>> u.set_password('password')
>>> u.save()
>>> from django.contrib.auth import authenticate
>>> user = authenticate(username='joe', password='password')
>>> user # this is None
>>> u.check_password('password')
>>> True
>>> u.check_password('passwordxxxx')
>>> False

我的auth后端是正常的..在实验中我特意添加:

AUTHENTICATION_BACKENDS = ('django.contrib.auth.backends.ModelBackend',)

这是我相信的默认值。

我不知道如何才能看出问题出在哪里......任何想法?

欢呼声

-i

1 个答案:

答案 0 :(得分:1)

虚假问题,上面的代码工作正常。