当前位置: 首页 > 面试题库 >

Django templates:字典键的值,其中有一个空格

姜凯风
2023-03-14
问题内容

在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" %}

或者,也许尝试重组你的字典,使其具有“更易于使用”的键。



 类似资料:
  • 问题内容: 我是python的新手,我列出了每年的年份和值。我想做的是检查字典中是否已经存在年份,如果存在,则将值附加到特定键的值列表中。 例如,我有一个年份列表,每年都有一个值: 我想做的是用年作为键填充那些字典,而那些数字作为值填充字典。但是,如果我两次列出了2009,那么我想将该第二个值追加到该词典中的值列表中,因此我想: 现在,我有以下内容: 问题答案: 如果我可以重新表述您的问题,您想要

  • 问题内容: 如您所见,当我使用时,键为“ 1”的成员将被覆盖 有什么办法可以将其作为python中的异常捕获,说在客户端的请求中找到重复的键? 问题答案: 媒体类型的rfc 4627 建议使用唯一键,但不会明确禁止它们: 对象中的名称应唯一。 从rfc 2119开始: 应该使用 这个词或形容词“推荐”,这意味着 在特定情况下可能存在忽略 特定项目的正当理由,但是 在选择其他方法之前,必须理解并仔细

  • 问题 怎样实现一个键对应多个值的字典(也叫 multidict)? 解决方案 一个字典就是一个键对应一个单值的映射。如果你想要一个键映射多个值,那么你就需要将这多个值放到另外的容器中, 比如列表或者集合里面。比如,你可以像下面这样构造这样的字典: d = { 'a' : [1, 2, 3], 'b' : [4, 5] } e = { 'a' : {1, 2, 3},

  • 问题内容: 我是python的新手,我列出了每年的年份和值。我想做的就是检查字典中是否已经存在年份,如果存在,则将值附加到特定键的值列表中。 举例来说,我有一个年份列表,每年都有一个值: 我想做的是用年作为键填充那些字典,而那些数字作为值填充字典。但是,如果我两次列出了2009,那么我想将该第二个值附加到该词典中的值列表中,因此我想: 现在,我有以下内容: 问题答案: 如果我可以重新表述你的问题,

  • 问题内容: 我有以下字典 我想获取字典列表中每个字典值“ KA20”和“ KA23”的键“ tmst”的总和。 您能对此提出建议吗? 问题答案: 您可以使用: 请注意,要正常工作,必须按分组键进行排序: