python - 如何创建 404 页面?

标签 python flask jinja2

我的应用程序使用 @app.route 捕获所有 url 请求,但偶尔我会遇到一个错误的 url,我没有匹配的 jinja 文件(但它确实匹配现有的 @应用程序路由)。所以我想将此类请求重定向到该错误网址的 404 页面。

如何在返回 render_template() 之前区分“存在 jinja 文件”和“不存在 jinja 文件”?

最佳答案

如果找不到模板,Jinja 将抛出异常:TemplateNotFound

所以代替:

def myview():
    return render_template(...)

你可以这样做:

def myview():
    try:
        return render_template(...)
    except TemplateNotFound:
        abort(404)

然后使用自定义错误页面处理 404 错误,如 Flask documentation 中所述.不要忘记从 flask 导入 abort 和从 jinja2

导入 TemplateNotFound

关于python - 如何创建 404 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10994195/

相关文章:

python - 重构旧版 python 代码 : from u'. 。 .' to ' ...'

python - 用 Flask 和 celery 编写测试

javascript - 使用 ReactJS、Superagent 和 Python (flask) 进行 POSTing

python - Flask:蓝图不显示自定义错误页面

带有多个引号的 Ansible 多行字符串

python - 将 SQLAlchemy 与多个自引用外键一起使用

python - 解析装饰器中的args和kwargs

multithreading - 在带有线程的 Flask 应用程序中使用 Keras 模型

Jinja2 环境选项 "lstrip_blocks"产生 TypeError

python - 使用 GLV 中的本地 TinkerGraph