2017-01-08 12 views
0

プロジェクトでCherryPyを使用し始めました。シンプルさのために私はそれが大好きですが、ドキュメンテーションの不足のため学習曲線は急峻でした。CherryPyを使用して変数にセッションを渡す

まず、ユーザーのセッションで変数を「設定」したいと思います。

@cherrypy.expose 
def setter(self): 
    email = "[email protected]" 
    cherrypy.session["email"] = email 
    return "Variable passed to session"   

第2に、この変数を別の関数でセッションから呼び出すことができます。

@cherrypy.expose 
def getter(self): 
    return cherrypy.session.get("email")   

答えて

0

"セット"の例は正しいです。

cherrypy.session["email"] = email 

しかし、あなたの例では、ただでなければなりません "GET":

return cherrypy.session["email"] 
+0

しかし、なぜあなたは変数にcharrypy.session ["email"]を格納できず、変数を返すのか知っていますか? (私は500の致命的なエラーを取得します:KeyError: 'variable_name') – Rimo

+0

あなたはどこで変数を宣言していますか?宣言された/割り当てられていない別の関数から返す場合、スコープには入りません。シーケンスを考慮する必要があります。あなたがそれを割り当てる前にセッションからキー "email"を読み込もうとすると、キーエラーが発生します。 –

1

あなたはセッションを可能にしていますか?

あなたは、その後追加設定ファイルを使用している場合:

[/] 
tools.sessions.on = True 

それとも、クイックスタートや似たようなために設定辞書を渡している場合:

{'/': {'tools.session.on': True}} 

はのドキュメンテーション文字列に見てみましょうセッションモジュールhttps://github.com/cherrypy/cherrypy/blob/master/cherrypy/lib/sessions.py

+0

はい、100%確実です。 – Rimo

関連する問題