7
我的應用程序以@app.route
捕獲所有的url請求,但偶爾我遇到了一個壞的url,我沒有匹配的jinja文件(它與現有的@app.route
匹配)。所以我想將這些請求重定向到404頁面,以查找那個不好的網址。如何創建404頁面?
如何在返回render_template()
之前區別「jinja文件存在」和「jinja文件不存在」?
我的應用程序以@app.route
捕獲所有的url請求,但偶爾我遇到了一個壞的url,我沒有匹配的jinja文件(它與現有的@app.route
匹配)。所以我想將這些請求重定向到404頁面,以查找那個不好的網址。如何創建404頁面?
如何在返回render_template()
之前區別「jinja文件存在」和「jinja文件不存在」?
神社將拋出一個異常,如果模板未發現:TemplateNotFound
所以不是:
def myview():
return render_template(...)
你可以做這樣的事情:
def myview():
try:
return render_template(...)
except TemplateNotFound:
abort(404)
再處理如Flask documentation中所述,自定義錯誤頁面出現404錯誤。不要忘記從flask
和TemplateNotFound
從jinja2
雅虎進口
abort
。你是對的render_template()真的返回異常,如果沒有找到jinja文件。有用。謝謝你的回答。 – hof0w請將下面的代碼添加到您的答案中。 '從瓶子進口中止' –