我想用html创建一个简单的日历,但是我不能创建31次
Django-视图:
def calendar(request):
try:
tvserie = Tvserie.objects.order_by('-date_next_episode')
return render_to_response('calendar.html',{'tvserie':tvserie})
except:
return render_to_response('error_page.html')Django-模板:
<table border="1">
{% for 0 in 31 %}
<tr>
{% if forloop.counter == tvserie.date_next_episode.day %}
<td>
{{tvserie.date_next_episode.day}}
{{tvserie.network}}<br>
{{tvserie.number_next_episode}} {{tvserie.title}}<br>
"{{tvserie.title_next_episode}}"<br>
</td>
{% else %}
<td>
{{forloop.counter}}
</td>
{% endif %}
</tr>
{% endfor %}
</table>发布于 2015-06-03 18:56:11
您可以通过以下方式创建自定义模板筛选器来创建范围:
from django import template
register = template.Library()
@register.filter
def get_range(val):
return range(val)然后,您应该替换以下内容:
{% for 0 in 31 %}有了这个:
{% for day in 31|get_range %}它创建了一个31项的范围,并对其进行迭代。
发布于 2015-06-03 19:15:34
一种方法是使用custom tag,或者简单地说这可能会对您有所帮助。
{% for i in "xxxxxxxxxxxxxxxxxxxx#31 times" %}
{{ forloop.counter0 }}
{% endfor %}https://stackoverflow.com/questions/30617943
复制相似问题