flask 错误处理register_errors(flask 46)

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')

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

@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 %}




Internal Server Error





{% endblock %}

errors/404.html

{% extends 'base.html' %}

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

{% block content %}




Page Not Found





{% endblock %}

errors/400.html

{% extends 'base.html' %}

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

{% block content %}




{{ description|default('Bad Request') }}





{% endblock %}

你可能感兴趣的:(flask 错误处理register_errors(flask 46))