2009-12-22 98 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