所以我想说我想显示一些这样的数据:
• b is foo
• a is bar
• c is baz
…但我的数据集看起来像这样(或任何其他顺序,因为JSON不关心):
{
"a": "bar",
"b": "foo",
"c": "baz"
}
如何告诉Jinja2按键顺序显示我的数据?如果我不确定元素c是否总是存在,该怎么办?
我认为这将是这样的,无济于事:
<ul>
{% for key, value in my_dict.items()|dictsort(by=['b', 'a']) %}
<li>{{ key }} is {{ value }}</li>
{% endfor %}
</ul>
最佳答案 您可以遍历硬编码的密钥列表:
<ul>
{% for key in ('b', 'a', 'c') %}
{% if key in my_dict %}
<li>{{ key }} is {{ my_dict[key] }}</li>
{% endif %}
{% endfor %}
</ul>
不存在的密钥由if测试处理.