2012-06-26 64 views
1

我试图从模板中的数据库中循环对象,我想要显示的其中一个内容是表中两个字段之间的差异。有没有一个干净的方式来做到这一点:减去模板中的两个字段

{% for game in games %} 
<tr> 
    <td width=100><p>{{ game.name }} </p></td> 
    <td width=300><p>{{ game.campaign }} </p></td> 
    <td width=90><p>{{ game.num_Players }} </p></td> 
    <td width=90><p>{{ game.num_Players - game.accepted_Characters }}</p></td> 
    <td width=90><p>{{ game.standing_Requests }}</p></td> 
</tr> 
{% endfor %} 

?游戏是所有这些领域的表格对象。

回答

4

Django模板被设计为不执行计算。您应调整games列表视图,然后在模板中显示出来:

# views.py 
for game in games: 
    game.chars_diff = game.num_Players - game.accepted_Characters 


# template.html 
<td><p>{{ game.chars_diff }}</p></td> 
+0

那会意味着要添加一个新的领域,以表或可我只是添加像你这样的变量? – Rorrik

+0

您可以添加一个属性,就像我所示。 –