我的烧瓶应用程序有以下结构。当一个无效的url出现在404错误被调用,但是我的404.html需要来自context\u处理器的数据,但是在abort 404中蓝图没有,所以context\u处理器从不被调用,404.html丢失数据。你知道吗
我该如何以不同的方式处理这个问题?你知道吗
def create_app(settings_overide=None):
app = factory.create_app(__name__, __path__, settings_overide)
if not app.debug:
app.errorhandler(404)(page_not_found)
return app
def page_not_found(e):
return render_template('404.html'), 404
@blueprint.context_processor
def load_global_data():
return get_data()
当找不到路由时,还没有设置蓝图(因为设置蓝图需要先确定路由)。因此,404错误处理程序不能指望蓝图已经确定。你知道吗
您必须手动执行
get_data()
调用。测试是否设置了特定的全局设置,如果没有,则在呈现404模板之前执行get_data()
函数。你知道吗相关问题 更多 >
编程相关推荐