我真的很想念這裏發生了什麼。 Django 1.3。Django驗證失敗
症狀:身份驗證被簡單地破壞。我已經減少了這個問題:
./manage.py shell
Python 2.6.6 (r266:84292, Dec 27 2010, 00:02:40)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>>from django.contrib.auth.models import User
>>> users = User.objects.all()
>>> users
[<User: jal>]
>>> users[0].set_password('whatever');
>>> users[0].save()
>>> user = auth.authenticate(username="jal", password="whatever")
>>> print user
None
我在這方面的損失。
編輯:
>>> from django.contrib.auth.models import User
>>> user = User.objects.get(username="jal")
>>> print user
jal
>>> user.check_password('whatever')
False
我使用的django.contrib.auth.backends.ModelBackend。
編輯二:
>>> print user
jal
>>> print user.is_active
True
編輯三:
麥金太爾是正確的 - 謝謝你。
>>> users = User.objects.all()
>>> user = users[0]
>>> user.set_password('whatever')
>>> user.save()
>>> u2 = auth.authenticate(username="jal", password="whatever")
>>> print u2
jal
這仍然留下了謎團,爲什麼它是用於實際訪問Django管理GUI,這就是爲什麼我領導下首先這條路打破。它給了我「請輸入正確的用戶名和密碼,請注意這兩個字段區分大小寫」密碼是否正確。
Django的什麼版本? – 2012-02-08 19:47:09
我正在運行1.3。 – jal 2012-02-08 19:48:51
既然您已設法設置密碼並將其正確保存,那麼Django管理員登錄名是否可以使用您的新密碼? – Alasdair 2012-02-08 19:49:39