В шаблоне Django, там способ получить значение от ключа, который имеет пространство в нем? Например, если у меня есть dict как:
{"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" %}
Или, может быть, попытаться реструктурировать свой диктовку, чтобы иметь клавиши «легче работать».