我的目标是在迭代for循环时立即为表条目显示url路径和图像源。但是,我通过两个不同的键访问图像的URL和路径。这将分别返回链接的条目和图像的条目。
{% for node in dictionary_list %}
{% for key, value in node.iteritems() %}
{% if key == 'image' %}
<td></td>
<td><img src={{ value }}></td>
{% elif key == 'path' %}
<td></td>
<td><a href={{ "http://example.com"+value }}>Link</a></td>
我已经想过将路径和图像放在一个键中并解析出每个键,但这对Jinja来说似乎不可行。是否可以返回类似以下内容的代码?
{% for node in dictionary_list %}
{% for key, value in node.iteritems() %}
{% if key == 'image_link' %}
<td></td>
<td><a href={{value1}}><img src={{value2}}></a></td>
答案 0 :(得分:3)
这取决于您的数据结构。最好是为每个值提供图像的url
和file_path
键的字典。我不知道原始dictionary_list
的结构和深度,所以这是最好的猜测,但你可以这样做:
dictionary_list = {'node_name_1': {'url': 'some-image.jpg', 'file_path':'/image/path'},
'node_name_2': {'url': 'some-image.jpg', 'file_path':'/image/path'},
... }
然后你可以在Jinja2循环中访问它们,如下所示:
{% for key, value in dictionary_list.iteritems() %}
<td><a href={{value['url']}}><img src={{value['file_path']}}></a></td>
{% endfor %}