Jinja2表达式:if未定义或定义但设置为false

时间:2017-12-14 11:47:26

标签: python vagrant ansible jinja2

如何在Jinja 2模板中实现这一点(我正在使用Ansible / vagrant设置):

如果未定义var或已定义var但设置为false 我有这些项目:

vhosts:
  - { host: "abc.dev" }
  - { host: "xyz.dev", ssl: false }

我有这个模板:

{% if item.ssl is none %}
  # do something
{% endif %}

因此,默认情况下,除非写入ssl: false

,否则ssl为true

1 个答案:

答案 0 :(得分:2)

使用default过滤器:

{% if item.ssl | default(true) %}
  # do something
{% endif %}