我有一本看起来像这样的字典
dict = {
'https://i.redd.it/4d87ifm2mch01.jpg': 'https://reddit.com/7yv1d8',
'https://i.redd.it/ru0bq0jpr9h01.jpg': 'https://reddit.com/7ys0l3',
'videos': {'https://gfycat.com/ifr/selfassuredinfinitehochstettersfrog'},..
}
'videos'
将值存储为一组,这样我就不会出现重复的 url,而且很方便。
但我遇到了一个问题,如何在模板中显示嵌套字典?
我现在就是这样的
{% for keys,values in data.items%}
{% for i,j in keys.items %}
<iframe src='{{j}}' frameborder='0' scrolling='no' allowfullscreen width='300' height='300'></iframe>
<a class="thumbnail" href="{{values}}"><img src="{{keys}}" width="100px" height="66px" border="1" /><span><img src="{{keys}}" /><br />whatever.</span></a>
<br />
我想要'videos'
要存储在 <iframe>
中的值以及其他作为图像。
最佳答案
在 keys
上调用 .items
可能会引发错误,因为它们是字符串,而且我不知道 data
包含什么,但是假设它被发送到您 View 中的模板,例如:
return render(request, "myapp/index.html", {"data": dict})
然后你可以检查key
equals到“videos”
,并迭代该集合:
{% for key, value in data.items %}
{% ifequal key "videos" %}
<iframe ...>
{% for url in value %}
<a class="thumbnail" href="{{ url }}">{{ url }}</a>
{% endfor %}
</iframe>
{% endifequal %}
{% endfor %}
关于python - Django 嵌套字典显示在模板中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48890736/