在Jinja2中分配未定义的变量

时间:2017-10-20 10:04:38

标签: ansible yaml jinja2

我得到了这块YAML,我希望jinja2分配并创建item.menu,如果以前没有定义过。

data:
  - name: bar
    menu: blah
  - name: foo

这是我的代码,错误输出ist“模板错误,同时模板化字符串:期望令牌'结束语句块'”

{% for item in data %}
{% if item.menu is not defined %}
{% set item.menu=item.name %}
{% endif %}
{% endfor %}

关于我做错了什么的任何帮助都会得到很好的准备:) 问候,亨德里克

1 个答案:

答案 0 :(得分:0)

你的问题不明确,但这是我的答案。我会把一切都弄清楚:

{% for item in data %}
{% if item.menu is not defined %}
{{ item.name }}
{% else %}
{{ item.menu }}
{% endif %}
{% endfor %}