在Django模板中,有没有办法从其中有空格的键中获取值?例如,如果我有一个像这样的字典:
{"Restaurant Name": Foo}
如何在模板中引用该值?伪语法可能是:
{{ entry['Restaurant Name'] }}
没有干净的方法使用内置标签来执行此操作。尝试做类似的事情:
{{ a.'Restaurant Name'}} or {{ a.Restaurant Name }}
将引发解析错误。
你可以在字典中进行for循环(但丑陋/效率低下):
{% for k, v in your_dict_passed_into_context %} {% ifequal k "Restaurant Name" %} {{ v }} {% endifequal %} {% endfor %}
自定义标签可能更干净:
from django import template register = template.Library() @register.simple_tag 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_passed_into_context "Restaurant Name" %}
或者,也许尝试重组你的字典,使其具有“更易于使用”的键。