2009-12-22 109 views
0

什么IM试验带来的未来:身份验证没有返回

S:\proj>manage.py shell 
Python 2.5.4 (r254:67916, Dec 23 2008, 15:10:54) django 1.1.1 

>>> from django.contrib.auth.models import User 
>>> u = User(username='luis', password='admin') 
>>> u.save() #sucessfull created in mysql db 
>>> from django.contrib.auth import authenticate 
>>> usuario = authenticate(username='luis', password='admin') 
>>> usuario 
>>> 

身份验证任何回报,我缺少的是什么?

回答

4

问题不在于authenticate,而在于您创建用户。

存储在u.password中的值需要是密码的哈希值,而不是原始密码本身。

您可以使用u.set_password('password')照顾哈希的你:

>>> u = User(name='luis') 
>>> u.set_password('password') 
>>> u.save() 
>>> authenticate(username='luis', password='password') 
<User: luis> 
+0

faaaaaaaaaaaaast和furiousssssss – panchicore 2009-12-22 17:45:55