8

私は次のコードを使用しています:

if request.session.get("name",False):

誰かが上記のコードが何をするのか教えてもらえますか?私が想定しているのは、セッションに「名前」がある場合はTrueを返し、そうでない場合はFalseを返すということです。私は自分のコードと混同しているので、この質問をここに投稿しました。

ありがとう。

4

2 に答える 2

17

sessionを持つキーが含まれている場合は、そのキーに関連付けられている値(おそらく)を"name"返します。それ以外の場合(「name」という名前のキーがない場合)は、を返します。 FalseFalse

は辞書のようなタイプであるため、メソッドsessionのドキュメントを取得するのに最適な場所は、標準ライブラリのPythonドキュメントです。問題の短所は、次の略記です。getget

if "name" in request.session:
    result = request.session["name"]
else:
    result = False

if result:
    # Do something
于 2012-08-28T19:41:33.103 に答える
0

Djangoのドキュメントによると、getメソッドの2番目の引数がデフォルトです。したがって、 "request.session.get(" name "、False):"ステートメントは、セッションに存在する場合は'name'アイテムの値を返し、存在しない場合はデフォルトのFalseが返されます。

于 2020-09-04T06:45:44.623 に答える