0

目前我正在打印玩家喜欢的国家<p>{{data['nation']}}</p>。我想为每个可以放置不同图像的国家/地区更改为(图像位于../images文件夹中,名称如下:american.pngbritish.png...,数据中的国家/地区是1for american2for british)。如何在价值的基础上为国家展现另一种形象?我正在使用 Tornado 模板。

4

1 回答 1

0

我不确定我是否正确理解了您的问题,但您可以定义字典以将一个数据映射到另一个数据。您可以使用{% set a=1 %}语法在模板中执行此操作:

<!-- index.html -->
<html>
<head>
    <title>Test</title>
    {% set map_img = {1:'american.png', 2:'british.png'} %} 
</head>
<body>
    <p>{{data['nation']}} -> {{map_img[data['nation']]}}</p></br>
    <img src="{{static_url("images/")}}{{map_img[data['nation']]}}"/>   
</body>
</html>

但是在模板本身中声明这样一个字典对我来说似乎是一个糟糕的设计。考虑在应用程序内部进行映射并将结果与​​其他参数一起传递给渲染方法。

于 2013-06-05T22:32:53.203 回答