最初にデータストアをチェックして、データがあるかどうかを確認し、ない場合は別のページにリダイレクトします (おそらく/admin
)。ただし、既に存在する URL マッピング フレームワークを書き換えたくありません。
マップされる前にすべてのリクエストを処理するハンドラーを設定する方法はありますか?
Python 2.7 と webapp2 で Google アプリ エンジンを使用しています。
最初にデータストアをチェックして、データがあるかどうかを確認し、ない場合は別のページにリダイレクトします (おそらく/admin
)。ただし、既に存在する URL マッピング フレームワークを書き換えたくありません。
マップされる前にすべてのリクエストを処理するハンドラーを設定する方法はありますか?
Python 2.7 と webapp2 で Google アプリ エンジンを使用しています。
はい、 dispatch()をカスタム クラスでオーバーライドできます。リンクに示されている例では、新しいクラス名はMyHandler
. MyHandler
これは、すべてのリクエスト クラスがではなくから派生する必要があることを意味しますwebapp2.RequestHandler
。これがセッションの実装方法であるため、 をdispatch()
呼び出す前にコードを挿入できますwebapp2.RequestHandler.dispatch(self)
。言い換えれば、webapp2.RequestHandler
とにかく置き換えたいと思うでしょう。