我有一个dict传递给我的模板,一些元素名称/键以@符号开头,即: {'@ id':123,'@ name':'Alex'}
我可以访问这些元素吗?
答案 0 :(得分:3)
自定义模板标记是访问具有特殊字符的字典键的唯一方法。 this question的答案提供了一个很好的例子。
懒惰:
from django import template
register = template.Library()
@register.filter
def dictKeyLookup(the_dict, key):
# Try to fetch from the dict, and if it's not found return an empty string.
return the_dict.get(key, '')
您可以这样使用:
{% dictKeyLookup your_dict "@blarg!#$^&*" %}
作为家庭作业,您还可以将其转换为简单的过滤器,它将为您提供如下语法:
{{ your_dict|getkey:"@blarg!@#$%" }}