我正在尝试在 Jinja2 HTML 模板中显示一些 JSON 结果,但它要么返回一个空页面,要么返回一个新行上的 JSON 的每个字符,或者每个带空格的字符。
我发送到 Jinja2 模板的对象如下所示:
[
{
"name": "John",
"lastname": "Smith",
"age": 22,
"likes": [
{"fruits":
["bananas", "oranges"]
},
{"sweets":
["chocolate"]
}
]
}
]
要将 JSON 对象发送到我使用的 Jinja2 模板:
render_template("report.html", items=items)
在 Jinja2 模板 HTML 上,如果我使用 {{ items }},它会将完整的对象显示为文本。 如果我尝试获取 {{ items['name'] }},它不会在页面上显示任何内容,页面将完全为空。
我也试过
{% for x in items %}
{{ x }}
{% endfor %}
它只显示相同的“文本”但有间距: [ { "n a m e ": "J o h n "[...]
在 HTML 文件中,我尝试执行如下操作:
<div id="name">{{ items['name'] }}</div>
如何显示传递给 Jinja2 的 JSON 对象中的对象?
请您参考如下方法:
我想我已经结束了。
我必须首先json_dumps 对象,然后json.loads 新对象。
r = json.dumps(json_onject)
loaded_r = json.loads(r)
return render_template("report.html", items=loaded_r)
现在我可以使用 JSON 对象中的任何值。
