我有一个errors.py
模块将错误映射到模板.我想添加一个默认的错误处理程序并遇到:http://flask.pocoo.org/mailinglist/archive/2012/7/12/default-error-handler/#cbeb8809dc0da7133f14b99e16f31d6b
我正在使用Blueprint
模块化的东西,而错误模块有以下映射:
@err.app_errorhandler(403) def forbidden(e): return render_template('403.html'), 403 @err.app_errorhandler(500) def serverError(e): return render_template('500.html'), 500 @err.app_errorhandler(Exception) def defaultHandler(e): return render_template('defaultError.html'), e.code
特定映射(403,500)如果我中止它们(或自然地诱导它们)就可以正常工作,但如果我中止其他任何事情(404等),defaulHandler()
则不会调用它.
你可以这样做:
app.config['TRAP_HTTP_EXCEPTIONS']=True app.register_error_handler(Exception, defaultHandler)