私のアプリケーションは、を使用してすべてのURLリクエストをキャッチしますが@app.route
、一致するjinjaファイルがない(既存のファイルと一致する@app.route
)不正なURLに遭遇することがあります。だから私はそのようなリクエストをその悪いURLの404ページにリダイレクトしたいと思います。
戻る前に「jinjaファイルが存在する」と「jinjaファイルが存在しない」を区別するにはどうすればよいrender_template()
ですか?
テンプレートが見つからない場合、Jinjaは例外をスローします。TemplateNotFound
したがって、代わりに:
def myview():
return render_template(...)
あなたはこのようなことをすることができます:
def myview():
try:
return render_template(...)
except TemplateNotFound:
abort(404)
次に、 Flaskのドキュメントで説明されているように、カスタムエラーページで404エラーを処理します。abort
からインポートすることflask
を忘れないでTemplateNotFound
くださいjinja2