我有一个方法可以返回我的基本模板中所需的数据(全局页脚的内容)。
如何(1)将变量传递到基本模板(其他模板扩展)或(2)将变量全局传递给所有模板而不在调用render_template
时明确添加它?
答案 0 :(得分:42)
来自烧瓶文档:Flask's Context Processors
将新变量自动注入模板的上下文中, Flask中存在上下文处理器。上下文处理器在之前运行 模板被渲染并具有注入新值的能力 模板上下文。上下文处理器是返回a的函数 字典。然后合并该字典的键和值 使用模板上下文,适用于应用中的所有模板:
docs中的示例:
@app.context_processor
def inject_user():
return dict(user=g.user)
请注意,此示例使用g
变量,该变量已在模板中访问。