【问题标题】:Iterating through json list in Django template遍历 Django 模板中的 json 列表
【发布时间】:2018-02-24 17:13:21
【问题描述】:

我在我的 Django 模板中传递了以下上下文:

context = {'test': custom_json_list}

custom_json_list 的输出是这样的:

{'pc_16530587071502': [{'people_count_entry__sum': None}],
 'pc_17100675958928': [{'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': 4},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None},
                       {'people_count_entry__sum': None}]} 

我想以如下格式显示数据:

'pc_16530587071502' : NONE
'pc_17100675958928' : None
'pc_17100675958928' : None
'pc_17100675958928' : None
'pc_17100675958928' : None
'pc_17100675958928' : None
'pc_17100675958928' : None
'pc_17100675958928' : 4
'pc_17100675958928' : None
'pc_17100675958928' : None
'pc_17100675958928' : None

如何继续使用语法,以便可以看到这种格式的数据。

我唯一能破译的是:

{% for key, value in test.items %}
     {{ key }} <br />
     {{ value }} <br />
{% endfor %}

提前致谢。

【问题讨论】:

    标签: python json django list jinja2


    【解决方案1】:

    你在正确的轨道上。您需要做的就是也遍历value

    {% for key, value in test.items %}
        {% for dct in value %}
            {% for k, sum in dct.items %}
                {{ key }}: {{ sum }} <br />
            {% endfor %}
        {% endfor %}
    {% endfor %}
    

    【讨论】:

    • 我试过了,但还是没有运气:(我在这里做错了吗:) 这是我的代码:{{ test }} &lt;br&gt; {% for key, value in test.items %} {% for k, sum in value.items %} {{ key }}: {{ sum }} &lt;br /&gt; {% endfor %} {% endfor %} - {{ test }} 给了我整个输出。 - 但是当我尝试您与我共享的代码时,它不会在模板上显示任何内容。我还缺少什么吗?
    • 啊...现在我明白了。因此,查看语法,我必须通过 dict 再次重申 :) 非常感谢您的帮助 +1
    猜你喜欢
    • 2010-10-21
    • 1970-01-01
    • 2020-04-04
    • 2011-01-25
    • 2011-05-15
    • 1970-01-01
    • 2017-08-13
    • 2016-08-13
    • 1970-01-01
    相关资源
    最近更新 更多