2

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

私の認証バックエンドは正常です..実験では、具体的に追加しました:

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

これは私が信じているデフォルトです。

問題がどこにあるかをどのように確認できるかについて途方に暮れています..何かアイデアはありますか?

乾杯

-私

4

1 に答える 1

1

偽の質問ですが、上記のコードは正常に動作します。

于 2012-04-27T11:40:16.493 に答える