使用 Flask 从 Jinja 模板中的 settings.py 文件获取变量
假设我有 settings.py 文件,其中包含一堆常量(将来可能会更多)。如何访问 Jinja 模板中的这些变量?
Say I have settings.py file with a bunch of constants (maybe more, in the future). How do I access those variables in a Jinja template?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Flask 会自动将应用程序的配置包含在标准上下文中。因此,如果您使用
app.config.from_envvar
或app.config.from_pyfile
从设置文件中提取值,则您已经可以在 Jinja 模板中访问这些值(例如,{{ config.someconst }}
)。Flask automatically includes your application's config in the standard context. So if you used
app.config.from_envvar
orapp.config.from_pyfile
to pull in the values from your settings file, you already have access to those values in your Jinja templates (e.g.,{{ config.someconst }}
).您需要定义一个
context_processor
:以这种方式注入的值将直接在模板中可用:
您可能需要使用 Python
dir
函数来避免列出所有常量。You need to define a
context_processor
:Values injected this way will be directly available in templates:
You'll probably want to use the Python
dir
function to avoid listing all of the constants.