我将Jinja2与YAML一起使用,并且具有以下结构:
{%- set example = [ (20, "on"), (40, "off")] %}
- name: example_yaml
loop:
{%- for value, state in example %}
- TheNumber: {{ value }}
TheState: {{ state }}
{%- endfor %}
当渲染第一个循环时,TheNumber
与20
是正确的,但TheState
最终是True
。我已经查看了文档,并尝试添加这样的字符串过滤器:
{{ state | string }}
但这也没有奏效。我还尝试过将字符串"on"
切换到其他类似"StateShouldBeOn"
的东西来进行测试。有了这些,我得到了我所期望的TheState = "StateShouldBeOn"
。
我的问题是,为什么";关于";渲染为布尔值?
尝试使用'on'而不是"在"上";。这应该会有所帮助。