You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ansible Jinja2处理嵌套字典生成IP拼接列表格式异常问题

Jinja2模板调整方案

问题核心

原有模板嵌套两层循环导致列表名重复输出,且IP拼接逻辑错误,可直接使用Jinja2内置join过滤器简化实现。

正确模板代码

{% for hosts_key, hosts_value in ip_allowed.items() %}
{{ hosts_key }}:{{ hosts_value | join(',') }}
{% endfor %}

如果需要保留原有的表头行,模板写法如下:

#ZONE       HOST(S)               OPTIONS
{% for hosts_key, hosts_value in ip_allowed.items() %}
{{ hosts_key }}:{{ hosts_value | join(',') }}
{% endfor %}

逻辑说明

  • 直接遍历ip_allowed的键值对,每个键(列表名)仅输出一次,后接冒号
  • 用join(',')过滤器直接将列表格式的IP集合拼接为逗号分隔的字符串,无需手动循环拼接
  • 外层循环每执行一次自动换一行,符合预期输出的换行要求

内容的提问来源于stack exchange,提问作者Pedro Kuramoto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 05:48:02