1

ユーザー認証によるアプリのバグで時間を失いました。少しややこしいと思いますが、誰かがその理由を説明できるかもしれません。私には非常に論理的に見えるでしょう。

user.is_staffメンバー変数ですuser.is_authenticatedが、 はメソッドです。ただし、クラスがoris_authenticatedであるかどうかに応じて True または False のみを返します( http://docs.djangoproject.com/en/dev/topics/auth/を参照) 。UserAnonymousUser

その理由はありますか?なぜuser.is_authenticatedメソッドなのか?

前もって感謝します

4

3 に答える 3

8

is_staffはデータベース フィールドであり、そうでis_authenticatedはないためです (それは奇妙であるため)。おそらくis_authenticatedプロパティに変えることができますが、django 開発者は、それを関数にするとより明確になると判断したに違いありません。

于 2010-03-15T09:04:34.040 に答える
0

is_authenticated() は、ユーザーが有効なユーザー名とパスワードを提供したことを確認するだけです。ユーザーをゲストユーザーとしてログインすることはできません(私が間違っていなければ)。

于 2010-03-15T11:00:01.493 に答える