如何使用Django模板系统实现此目的:
假设我有2个变量传递给模板系统:
days=[1,2,3,4,5]
items=[ {name:"apple,day:3},{name:"orange,day:5} ]
我希望输出如表:
1 2 3 4 5
apple n n y n n
orange n n n n y
你可以注意到,给不匹配的“n”和匹配的“y”。
答案 0 :(得分:6)
为什么不在django视图中定义这个逻辑,然后简单地将Ys和Ns的数组传递给模板?
答案 1 :(得分:6)
这是伊格纳西奥的意思。也就是说,我可能同意丹尼尔你应该在视图中这样做。
<table>
{% for item in items %}
<tr>
<td>{% item.name %}</td>
{% for dday in days %}
<td>
{% ifequal dday item.day %}y{% else %}n{% endifequal %}
</td>
{% endfor %}
</tr>
{% endfor %}
</table>
我已将天数循环变量'dday'调用,以明确此处的查找item.day
实际上是item['day']
。
答案 2 :(得分:2)
两个循环。外部循环通过items
,内部通过days
。测试outer[day]
是否等于inner
,如果是,则输出y
,如果不是,则输出n
。