Flaskプラグビューでurl_を使用するforリダイレクト先パス取得
1046 ワード
Flaskフレームワークは0.7バージョン後に
プラグビューは本質的にクラス方式で本来のビュー関数とURLルーティングを管理し、プラグビューでは Blueprint指定モジュール名 プラグビュークラス がある. urlバインド ログイン要求がpostを介してバックグラウンド要求に送信され、検証が通過し、ホーム(mainpage)にジャンプする場合、
の概念を導入したが、概念はここでは詳しく述べず、公式ドキュメントを表示することができる.しかし、書き方の変化により、熟練していない開発者にいくつかの問題が発生しました.例えば、私自身が今日、サーバがredirect
にリダイレクトすることを指定したとき、url_for
で正しいビュー関数にどのように指定しますか.実は、プラグビューをはっきり理解すれば、この問題はよく解決されます.プラグビューは本質的にクラス方式で本来のビュー関数とURLルーティングを管理し、プラグビューでは
as_view()
がビュー名を指定し、モジュール名はBlueprint
の設定で決定することができる.したがって、次のように仮定します.main
class LoginPage
は、get要求とpost要求とをそれぞれ応答する方法def get(self)
&def post(self)
を含み、もう1つのプラグビュークラスclass MainPage
url('/login', view_func=LoginPage.as_view('login'))
&url('/mainpage', view_func=MainPage.as_view('mainpage'))
url_for()
を使用してリダイレクトする場合、指定モジュール名はmain
、ビュー名はmainpaige
であり、最終的には:return redirect(url_for('main.mainpage'))
と書けばよい.