2

web.py を使用して Web アプリを開発しています。以下のようなセッションを使用します。

store = web.session.DBStore(db.sess, "sessions")
session = web.session.Session(
    app,
    store,
    initializer={
        "auth": False,
        "username": "anonymous",
        "preferences": db.data.select('preferences', where="username='anonymous'", limit=1)[0]
    }
)
web.config._session = session

私は、デスクトップ アプリケーションもあると便利だと判断しました。私が直面している問題は、セッションを Web ブラウザの外で正しく動作させることができないことです。特定のデータを保持する別のオブジェクトだと思いますが、完全にはわかりません。

私が必要としているのは、web.py を使用してセッションを作成し、すべての機能を使用できるようにする方法です (多くの場合、セッションをチェックして、誰がログインしているかを確認します)。基本的に以前と同じデータを含むセッションなので、引き続き関数を使用できます。

これにおける私の全体的な目標は、同じモデルを使い続けることです。そうすれば、機能を複製するだけの多くの関数を書き直す必要がなくなるからです。

4

1 に答える 1

0

私は自分が間違っていたことを知りました。web.input にはコンテキストが必要であることがわかりました。これは、私が見る限り、ブラウザーの外では利用できません。

私がやったことは、login(...)方法を からlogin(input)に変更することでしたlogin(username, password)。これで、インタラクティブ シェルからセッションを取得できます。インタラクティブ シェルはブラウザではないため、これはデスクトップ アプリケーションにも引き継がれると思います。

于 2013-08-12T14:27:57.050 に答える