我有一个静态dictionary
:
urls = {
'foo': 'http://example.com',
'bar': 'http://example2.com',
'test': 'http://example3.com'}
然后我有一个元组列表。每个tuple
包含前一个字典的一个键:
myList = [('bar', 0.9),('test', 0.7),('foo', 0.5)]
我想在模板中按降序排列每个键字符串的相关网址,就像它们在列表中一样(显式创建in this way并设置reverse = True
)。
在模板中我试过这个,但是,正如预期的那样,它不起作用:
{% for i in myList %}
<tr>
<a href= " {{ urls[i[0]] }} ">
<td>
{{ i[0] }}
</td>
</a>
</tr>
{% endfor %}
那么,我如何访问dictionary
元素?
答案 0 :(得分:1)
您生成的HTML错误。
请勿按照您的方式将表格元素放入链接文字中。
我已经测试了这样的简单html:
<table>
<tr>
<a href= " http://google.de ">
<td> Fooo
</td>
</a>
</tr>
</table>
它将导致“死”链接。将完整的a href
放入<td>
代替:
<table>
<tr>
<td>
<a href= " http://google.de ">
Fooo
</a>
</td>
</tr>
</table>
答案 1 :(得分:0)
您需要添加“| safe”,如下所示:
{% for i in myList %}
<tr>
<a href= " {{ urls[i[0]] | safe }} ">
<td>
{{ i[0] }}
</td>
</a>
</tr>
{% endfor %}