我有一本结构类似于的字典:
{
'id': 16,
'name': 'something',
'client': 'client1',
},
{
'id': 17,
'name': 'something',
'client': 'client2',
},
{
'id': 18,
'name': 'something-else',
'client': 'client3',
}
我可以在模板中迭代我的字典,但在这种情况下我试图获取
name
的唯一值。 我尝试了几种不同的选择,例如:
{% for name in data | unique %}
或
{% for name in data.name | unique %}
但没有一个给我返回唯一名称的列表。
最好的方法是什么? 我考虑过创建一个自定义过滤器,但想知道是否有更好的方法来做到这一点。
来自文档:
从给定的可迭代对象中返回唯一项的列表。
– 区分大小写字符串。case_sensitive
– 过滤具有该属性唯一值的对象。attribute
因为您想根据
name
参数的值消除重复项,所以您应该相应地设置 attribute
参数:
{% for name in data | unique(attribute="name") %}