[英]Global variables in Flask templates
可能不是准确的标题,因为我是flask / python的新手。 我正在研究一个将由不同团队使用的内部工具。 每个团队都有不同的部署阶段,例如alpha
, beta|test
, prod
,他们也有多个区域,例如NA
, EU
, AP
等......
现在,当我使用redirect_template
时,我将stage
和region
作为变量发送,然后在模板中使用。 但是,为每个redirect_template
做一些都很麻烦。 有没有更好的方法呢?
我假设您的Flask
对象的名称是app
(即app = Flask(__name__)
)。
在初始化app
后立即放置以下代码。
@app.context_processor
def inject_stage_and_region():
return dict(stage="alpha", region="NA")
在您的Jinja模板中, "alpha"
{{ stage }}
"alpha"
{{ stage }}
"alpha"
和"NA"
可以由{{ stage }}
和{{ region }}
引用。
Flask docs: http : //flask.pocoo.org/docs/0.12/templating/#context-processors
要将新变量自动注入模板的上下文,Flask中存在上下文处理器。 上下文处理器在呈现模板之前运行,并且能够将新值注入模板上下文。 上下文处理器是返回字典的函数。 然后,对于应用程序中的所有模板,此词典的键和值将与模板上下文合并
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.