首页 > 解决方案 > 如何在jinja中迭代列表字典

问题描述

我有一本神社字典:

  reservations:
test:
  - hw_address: 00:0c:29:60:F8:3D
    ip_addresses: 2001:db8:1::101
alpine:     
  - hw_address: 00:50:56:84:F4:B2
    ip_addresses: 2001:db8:1::102        
test_server:     
  - duid: 01:02:03:04:05:06:07:08:09:0A
    ip_addresses: 2001:db8:1::103
    prefixes: 2001:db8:2:abcd::/64
    hostname: foo.example.com

我想要一个类似的结果

{ "hw-address": "00:0c:29:60:F8:3D", "ip-addresses": [ "2001:db8:1::101" ] },
{ "hw-address": "00:50:56:84:F4:B2", "ip-addresses": [ "2001:db8:1::102" ] } 
{ "duid": "01:02:03:04:05:06:07:08:09:0A",
  "ip_addresses": ["2001:db8:1::103"],
  "prefixes": ["2001:db8:2:abcd::/64"],
  "hostname": "foo.example.com"
}

我尝试了 dictsort,但我无法访问这些项目

        {%- for vm_name, d in reservations | dictsort %}
        {{ vm_name }}
        {{ d }}
        {% endfor %}

标签: jinja2salt-stack

解决方案


推荐阅读