flask: error_handler for blueprints

blueblank picture blueblank · Oct 7, 2012 · Viewed 13.5k times · Source

Can error_handler be set for a blueprint?

@blueprint.errorhandler(404)
def page_not_found(error):
    return 'This page does not exist', 404

edit:

https://github.com/mitsuhiko/flask/blob/18413ed1bf08261acf6d40f8ba65a98ae586bb29/flask/blueprints.py

you can specify an app wide and a blueprint local error_handler

Answer

suzanshakya picture suzanshakya · Nov 13, 2013

You can use Blueprint.app_errorhandler method like this:

bp = Blueprint('errors', __name__)

@bp.app_errorhandler(404)
def handle_404(err):
    return render_template('404.html'), 404

@bp.app_errorhandler(500)
def handle_500(err):
    return render_template('500.html'), 500