2016-05-05 29 views
1

我在此刻的問題,我有一個地圖AWS一些與他們的路由表子網像這樣(通過ansible示例輸出):Ansible和模板文件中插入值到模板

"subnetwork_route_map": [ 
    { 
     "route_table_id": "rtb-xxxxxx", 
     "subnet_id": "subnet-xxxxxx" 
    }, 
    { 
     "route_table_id": "rtb-xxxxxx", 
     "subnet_id": "subnet-xxxxxxx" 
    }, 
    { 
     "route_table_id": "rtb-xxxxxx", 
     "subnet_id": "subnet-xxxxxx" 
    } 
] 

我希望在一個模板文件中插入這些值,我想我可以做這樣的事情看到了幾個例子後:

{% for item in subnetwork_route_map %} 
{{ item[1]['subnet_id'] }},{{ item[1]['route_table_id'] }}§ 
{% endfor %} 

如何我曾經得到一個錯誤,當我嘗試這個我從ansible錯誤:

fatal: [localhost]: FAILED! => {"failed": true, "msg": "dict object has no element 1"} 

回答

0

subnetwork_route_map是字典的名單,item是個人字典,你不需要[1]部分:

{% for item in subnetwork_route_map %} 
    {{ item['subnet_id'] }},{{ item['route_table_id'] }}§ 
{% endfor %} 
+0

謝謝你,似乎不過我已經刪除了以前的錯誤解釋現在收到以下內容。致命的:[localhost]:失敗! => {「failed」:true,「msg」:「'item'未定義}} – user3105272