我有一个模型,我需要从中列出给定时间段内的所有对象。
例如:10-05-2014 to 10-12-2014
然后我需要明确地显示对象。含义首先显示在start_date(10-05-2014) up until end_date(10-12-2014)
For example:
10-05-2014:
objects list for that day
11-05-2014:
objects list for that day
and so on until end_date
查询:
MyModel.objects.unsettled.filter(
created_on__range=[start_date, end_date]
)
但我的问题是如何在模板中按日期顺序列出查询集。这样在同一日期创建的所有对象都将在该日期下显示。简而言之,我想在按日期划分的部分中显示列表。
MyModel.objects.unsettled.filter(created_on__range = [start_date,end_date])。order_by(" created_on")。但它只会对列表进行排序。如何对结果进行分组。??
答案 0 :(得分:1)
使用{% ifchanged %}
模板标记:
{% for obj in obj_list %}
{% ifchanged %}
<h2>{{ obj.created_on|date }}</h2>
{% endifchanged %}
<div>{{ obj.name }}</div>
{% endfor %}
另一个(稍微复杂一点)选项是使用{% regroup %}
标记。