【问题标题】:Python (Jinja2) variable inside a variable变量内的 Python (Jinja2) 变量
【发布时间】:2016-01-03 18:26:18
【问题描述】:

我正在尝试在 Jinja2 模板(在 Ansible 中)中迭代字典。字典中的数组或键之一是'abcd'

这个{{ item.value.abcd.port }} 工作正常,但每个字典中的键“abcd”各不相同。

我希望使用变量 'nginx_dir' 执行以下操作。

{% set nginx_dir = item.value.keys().1 %}
{% set my_port = item.value.nginx_dir.port %}

或者根本不使用变量,像这样

{{ item.value.[item.value.keys().1].port }}

【问题讨论】:

    标签: python variables jinja2 ansible


    【解决方案1】:

    我必须使用其中任何一个才能在变量中使用变量。

    {% set my_port = item.value.get(nginx_dir).port %}
    {% set my_port = item.value[nginx_dir].port %}
    

    我不想硬编码我的 Jinja2 模板,这正是我想要的。

    【讨论】:

    • 你能告诉我变量nginx_dir的样子,当它动态改变时如何设置它的值。
    • 目录是/opt/nginx/conf.d/something。我用过字典,然后循环翻阅它。抱歉,已经有一段时间了,我没有确切的代码给你看。
    猜你喜欢
    • 2019-07-08
    • 1970-01-01
    • 2015-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-12
    • 2022-08-07
    • 1970-01-01
    相关资源
    最近更新 更多