我正在尝试使用jinja2 for循环,其数组变量的名称是动态的。模板是
london:
stations:
- station:
name: waterloo
- station:
name: paddington
paris:
stations:
- station:
name: nation
我想用
之类的东西来解析它{% for station in country.capital.stations %}
name is {{ station.name }}
{% endfor %}
其中country.capital
是一个变量,它假定循环中的大写城市名称,stations
是一个数组。但是,当country.capital
为london
时(例如),上面的for循环变量会尝试解析country.capital.stations
而不是london.stations
。
我已经检查过了,country.capital
确实解析为london
,如果我将for循环改为使用london.stations
,那么它就可以了。
我理解为什么上面的代码不起作用,直接指定它,但我无法弄清楚如何使它动态化,尽管在不同位置尝试了多种卷曲,方形和曲线括号的组合。
如果有人能指出我正确的方向,我将不胜感激。