嗨,我有一个盐状态文件,其扩展名为“.sls”,并且正在使用jinja模板
我在jinja模板中创建一个列表 . 问题是当我运行该文件然后列表转换为JSON,它将每个元素周围的双引号转换为单引号,这会导致错误 .
{%- set opentsdb_hosts = [] -%}
{%- for host in salt['pnda.opentsdb_hosts']() -%}
{%- do opentsdb_hosts.append("http://%s:%s" % (host, opentsdb_port)) -%}
{%- endfor -%}
如您所见,我正在创建一个名称为 opentsdb_hosts 的列表 . opentsdb_hosts 中的每个元素都应该有一个双引号 . 但它正在做单引号 .
请帮忙 .
1 回答
您必须使用
{{ opentsdb_hosts }}
直接输出opentsdb_hosts
,它以python友好格式输出它,通常比双引号更喜欢单引号(尽管两个引号在python中都可用作有效的字符串文字) .要输出
opentsdb_hosts
作为json,只需使用salt提供的json渲染器,即{{ opentsdb_hosts | json }}
.