使用Django在HTML中的JSON对象中打印键值

时间:2016-12-15 02:05:21

标签: python html json django

我在字符串中有一个看起来像的JSON对象 '{"key1":"value1", "key2": "value2", "key3": "value3"}'

我可以使用json.loads将其转换为JSON对象,但是当我尝试在HTML中打印它时,它会打印整个JSON对象,如

{"key1":"value1", "key2": "value2", "key3": "value3"}

我的功能如下:

def jsonPretty(json_string):
    return json.loads(json_string)

并在HTML / Django中:

{{kvpair|jsonLoadsPretty}}

但是我想要它打印

key1 value1 key2 value2 key3 value3

格式可能略有不同,但我希望每个键值对分开\n,并且应删除括号。

这样做的最佳方式是什么?

编辑:

我在使用

运行for循环之前使用{% with kvpair|jsonPretty as kvjson %}
{% for k, v in kvjson.items %}
    <p> {{k}} {{v}}</p>

现在它工作正常。感谢@Andrey Shipilov的帮助!

2 个答案:

答案 0 :(得分:2)

{% for key, value in kvpair %}
    <p>{{ key }} {{ value }}</p>
{% endfor%}

https://docs.djangoproject.com/en/1.10/ref/templates/builtins/#for

答案 1 :(得分:0)

适用于 {% for key, value in kvpair。items %}