hof*_*f0w 7 python jinja2 flask
我的应用程序捕获所有url请求@app.route,但偶尔我碰到一个坏网址,我没有匹配的jinja文件(埠它匹配现有@app.route).所以我想将这些请求重定向到404页面以查找该坏网址.
如何在返回之前区分"a jinja文件存在"和"jinja文件不存在" render_template()?
men*_*nsi 17
如果找不到模板,Jinja将抛出异常: TemplateNotFound
所以代替:
def myview():
return render_template(...)
Run Code Online (Sandbox Code Playgroud)
你可以这样做:
def myview():
try:
return render_template(...)
except TemplateNotFound:
abort(404)
Run Code Online (Sandbox Code Playgroud)
然后使用Flask文档中的说明使用自定义错误页面处理404错误.不要忘了进口abort从flask和TemplateNotFound从jinja2