前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >flask 错误处理register_errors(flask 46)

flask 错误处理register_errors(flask 46)

作者头像
用户5760343
发布2019-08-14 16:41:31
5850
发布2019-08-14 16:41:31
举报
文章被收录于专栏:sktjsktj

app.py

from flask import Flask,render_template from views.admin import admin_bp from views.auth import auth_bp from views.blog import blog_bp from settings import config from extensions import bootstrap,db,login_manager,csrf,ckeditor,mail,moment,toolbar,migrate,manager import os import click from flask_wtf.csrf import CSRFError from fakes import fake_admin, fake_categories, fake_posts, fake_comments

app = Flask(name) basedir = os.path.abspath(os.path.dirname(file))

def create_app(config_name=None): if config_name is None: config_name = os.getenv('FLASK_CONFIG', 'development')

代码语言:javascript
复制
app = Flask('flaskblog')
app.config.from_object(config[config_name])

register_blueprints(app)
register_extensions(app)
register_errors(app)
return app

def register_blueprints(app): app.register_blueprint(blog_bp) app.register_blueprint(admin_bp) app.register_blueprint(auth_bp)

def register_extensions(app): bootstrap.init_app(app) db.init_app(app) login_manager.init_app(app) csrf.init_app(app) ckeditor.init_app(app) mail.init_app(app) moment.init_app(app) toolbar.init_app(app) migrate.init_app(app, db) manager.init_app(app)

def register_errors(app): @app.errorhandler(400) def bad_request(e): return render_template('errors/400.html'),400

代码语言:javascript
复制
@app.errorhandler(404)
def page_not_found(e):
    return render_template('errors/404.html'), 404

@app.errorhandler(500)
def internal_server_error(e):
    return render_template('errors/500.html'), 500

@app.errorhandler(CSRFError)
def handle_csrf_error(e):
    return render_template('errors/400.html', description=e.description), 400

errors/500.html

{% extends 'base.html' %}

{% block title %}500 Error{% endblock %}

{% block content %} <div class="page-header"> <h1>500 Error</h1> </div> <div class="row"> <div class="col-sm-8"> <p>Internal Server Error</p> </div> <div class="col-sm-4 sidebar"> {% include '_sidebar.html' %} </div> </div> {% endblock %}

errors/404.html

{% extends 'base.html' %}

{% block title %}404 Error{% endblock %}

{% block content %} <div class="page-header"> <h1>404 Error</h1> </div> <div class="row"> <div class="col-sm-8"> <p>Page Not Found</p> </div> <div class="col-sm-4 sidebar"> {% include 'blog/_sidebar.html' %} </div> </div> {% endblock %}

errors/400.html

{% extends 'base.html' %}

{% block title %}400 Error{% endblock %}

{% block content %} <div class="page-header"> <h1>400 Error</h1> </div> <div class="row"> <div class="col-sm-8"> <p>{{ description|default('Bad Request') }}</p> </div> <div class="col-sm-4 sidebar"> {% include 'blog/_sidebar.html' %} </div> </div> {% endblock %}

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.08.12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • app.py
  • errors/500.html
  • errors/404.html
  • errors/400.html
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档