【问题标题】:Can I access specific key values in dictionary from django template?我可以从 django 模板访问字典中的特定键值吗?
【发布时间】:2012-04-12 12:13:15
【问题描述】:

是否有任何 get() 函数来代替它?

{% for key, value in choices.items %} 
  <li>{{key}} - {{value}}</li>
{% endfor %}

在 python 中,我有 get() 函数来从特定键获取值。但是我找不到使用 django 模板标签的相应方法。所以我想知道这可能吗? 我需要获取特定值,因为使用循环会在 html 源代码中添加很多新行。

或者应该在将视图内部的输出发送到模板之前处理好,哪种方法更好?

【问题讨论】:

    标签: python django django-templates


    【解决方案1】:
    {{ choices.values }}
    

    这会立即为您提供字典中所有值的列表。

    【讨论】:

      【解决方案2】:

      您可以指定为{{ choices.key_name }} 它对我有用。很简单

      【讨论】:

        【解决方案3】:

        我认为你现在已经很先进了,只是为了分享我的观点。你也可以这样做

        {% for value in dict %} 
            {{value}}                                                                   
        {% endfor %}
        

        或与键,值类似

        {% for key,value in dict.items %}
            {{key}} : {{ value }}
        {% endfor %}
        

        【讨论】:

          【解决方案4】:

          如果选择类型是 DICT,例如 {}。

          {{choices.somekey|default:""}}
          

          如果choices.items 是DICT 类型。

          {{choices.items.somekey|default:""}}
          

          试试看小例子。

          # In Views.py
          def dict_test(request):
              my_little_dict = {"hi": "Hello"} 
              ....
          # in Template
          {{my_little_dict.hi}}
          

          【讨论】:

            【解决方案5】:

            您可以使用{{ choices.items.key }} 访问特定的dict 元素。

            尽管如此,没有理由关心 HTML 代码中的空白;典型的最终用户在阅读它时没有真正的业务,如果他好奇,他总是使用 DOM 查看器或通过 HTML 美化器运行它。

            【讨论】:

            • 是的,没错。只是看到它看起来不整洁有点生气^^;
            • 你不能用 django 的模板语言做前者 (choices.items['key'])
            • 我必须尝试一下 jinja ——这听起来很有用
            【解决方案6】:

            如果你想要一个特定的值,只需将它添加到虚线路径:

            {{ choices.items.somekey }}
            

            如果choices.itemsdict,将为您提供choices.items['somekey'] 的值。

            【讨论】:

              猜你喜欢
              • 2015-07-09
              • 2021-04-10
              • 2019-09-01
              • 1970-01-01
              • 2016-02-29
              • 2013-11-13
              • 2014-02-08
              相关资源
              最近更新 更多