AnsibleUndefinedVariable:“列表对象”没有属性

AnsibleUndefinedVariable:“列表对象”没有属性,ansible,jinja2,Ansible,Jinja2,Yaml模板 bgp: local: 109 remote: 109 site: - neighbor: peer_ip: [ 172.16.110.3, 172.16.110.4 ] vpnv4: vrf: Site-1 network: 109.10.1.1 mask: 255.255.255.0

Yaml模板

bgp:
      local: 109
      remote: 109
      site:
         - neighbor:
              peer_ip: [ 172.16.110.3, 172.16.110.4 ]
           vpnv4:
              vrf: Site-1
              network: 109.10.1.1
              mask: 255.255.255.0
         - neighbor:
              peer_ip: [ 172.16.120.3, 172.16.120.4 ]
           vpnv4:
              vrf: Site-2
              network: 109.10.1.1
              mask: 255.255.255.0
Jinja2模板

router bgp {{ item.bgp.local }}
{% for i in item.bgp.site %}
 address-family ipv4 vrf {{ i.vpnv4.vrf }}
 network {{ i.vpnv4.network }} mask {{ i.vpnv4.mask }}
{% for b in item.bgp.site.neighbor.peer_ip %}
 neighbor {{ b }} remote-as {{ item.bgp.remote }}
 neighbor {{ b }} activate
{% endfor %}
{% endfor %}
如果我删除这个,它会工作。我怀疑列表有问题,但不知道如何解决

{% for b in item.bgp.site.neighbor.peer_ip %}
 neighbor {{ b }} remote-as {{ item.bgp.remote }}
 neighbor {{ b }} activate
{% endfor %}
item.bgp.site实际上是您的外部循环的i


Try:{%forb in i.neighbor.peer_ip%}

您指的是哪个列表?你如何调用ansible?