python - 从 Jinja2 模板访问操作系统环境变量

标签 python jinja2

是否可以直接从 Jinja2 模板访问操作系统环境变量?

最佳答案

按照@Renier 在评论中关于自定义过滤器的指示,我想出了一个可能的解决方案。

定义一个 custom filter :

def env_override(value, key):
  return os.getenv(key, value)

在环境中安装过滤器:

env.filters['env_override'] = env_override

按如下方式使用过滤器:

"test" : {{ "default" | env_override('CUSTOM') }}

适当的环境变量可以设置为:

export CUSTOM=some_value

如果设置了环境变量,输出将是:

"test" : some_value

否则:

"test" : default

关于python - 从 Jinja2 模板访问操作系统环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25862071/

相关文章:

python - 将 grid.lines 添加到 tkinter 不起作用

python - 在多个 astropy 表上使用 vstack 时如何避免内存爆炸

python - jinja2如何删除尾随换行符

python - 在 Python 中处理 HTML 以删除和关闭打开标签

python - GAE 应用程序 main.py 请求处理程序

docker - ansible中的jinja2拆分过滤器

python - 如何从 DataFrame 中删除多列中具有重复字符串的行?

python - 使用 PySpark 对多列执行滞后

python/flask/Jinja2 和 Json

python - 在 Pandas 中将字符串转换为时间