7
Я в настоящее время обучение jinja2 и я не уверен, о том, как решать переменные правильный путь:jinja2 вложенные переменные
Вот мои переменные в YAML:
---
hosts:
app201.acme.com: {eth0: {ip: 46.0.0.1, netmask: 255.255.255.255}}
graphite.acme.com: {eth0: {ip: 46.0.0.2, netmask: 255.255.255.255},
eth0.1: {ip: 10.2.90.1, netmask: 255.255.255.255}}
и здесь шаблон jinja2:
{{ fqdn }}
{% for interface in hosts[fqdn] %}
{{ interface }}
{{ hosts[fqdn].interface.ip }} << doesn't work
{{ hosts[fqdn].{{ interface }}.ip }} << doesn't work
{{ interface.ip }} << doesn't work
{% endfor %}
так что в настоящее время мой вывод выглядит так, потому что я не могу получить доступ к второму измерению хэша yaml.
graphite.acme.com eth0.1
eth0
это сделал трюк. Спасибо! – damaex
@ пользователь1436955, самый добро пожаловать. Вы можете отметить это как ответ, если считаете, что это то, что вы искали. – Vikas
Интересно, интерфейс ['ip'] не работает, я думаю, поскольку интерфейс обрабатывается как строка, а не dict. –