我试图让模板根据条件打印一些东西。它从数据库获得分数,并根据分数,说明奖章:
{% for person in comp.round_1_set.all|order_by:"-score" %}
<tr>
<td> {{person.score|gol_sil}}
</td>
</tr>
{%endfor%}
我尝试做{% if person.score > 10 %}
类型的事情,但我得到了一个错误。我想它不能在模板中完成。然后我用这段代码创建了一个过滤器:
@register.filter_function
def gol_sil(score):
if score < 20:
medal = " Silver "
else:
medal = " "
return medal
并将其应用于
{{person.score|gol_sil}}
但是我收到了无效的过滤错误,为什么会这样?
我无法在观看中执行此操作,因为我使用.set_all
来获取模板中的个人,是否有任何想法?
答案 0 :(得分:0)
请参阅此网址以创建过滤器
因为我猜你在包含@ register.filter_function
的行中有一些错误