在使用 jinja2 模板时,我无法将新条目追加到字典对象中。
例如,这里我使用的是 jinja2 模板,我创建了一个 data 变量,它是一个字典。在检查了一些 if 条件后,我想要将位置属性附加到数据对象,例如
{%- set data = {
'name' : node.Name,
'id' : node.id,
}
-%}
{% if node.location !="" %}
data.append({'location': node.location})
{% endif %}
但是我找不到实现此目的的方法,并收到 UndefinedError:
jinja2.exceptions.UndefinedError: 'dict object' has no attribute 'append'
有没有人遇到过这个问题或者可以提供解决这个问题的引用?
我在网上搜索但找不到解决方案,即如何实现向 Jinja 中的字典对象添加条目。
我引用了以下和其他网络资源:
最佳答案
没有 jinja2.ext.do
扩展,你可以这样做:
{% set x=my_dict.__setitem__("key", "value") %}
忽略 x
变量并使用现在更新的字典。
UPD:此外,这适用于 len()
(__len__()
)、str()
(__str__()
)、repr()
(__repr__()
) 和许多类似的东西。
关于python - 如何在使用 jinja2 时将新条目添加到字典对象中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36886650/