获取或检查Jinja2中的当前环境

时间:2019-03-07 14:15:14

标签: python flask jinja2

我正在使用Flask和Jinja2,但是我有点无法检查应用程序正在运行的当前环境。在服务器上,我只是通过以下方式进行操作:

# on the serverside example.py
env = os.getenv('FLASK_CONFIG')

我想用Jinja模板(在html中)文件实现相同的效果。这里的用例是根据应用运行的环境(如下所示)来做某事

# In base.html
{% if env == 'production' %}
   # do something
{% else %}
   # do something else
{% endif %}

我的挑战是获取env变量。任何帮助将不胜感激。这似乎是重复的,但完全不同。无需使用过滤器。我不想获取环境变量。我能够通过

实现的目标

config ['ENVIRONMENT_VARIABLE_KEY']

我想做的就是获取环境本身(本地,开发,暂存或基于我在配置中设置方式的生产方式)

1 个答案:

答案 0 :(得分:1)

Jinja模板中默认情况下可使用config对象。

只需这样访问它:

{% if config['ENV'] == 'production' %}
# do something
{% else %}
# do something else
{% endif %}

使用在配置文件中命名的环境变量替换“ ENV”。