Обновление :
Этот ответ бесполезен.Поскольку entered
является DateTimeField
, запрос будет иметь счет 1 для каждого значения entered
.Это не то, что хотел ОП.(Спасибо Дэннироа )
Изменение типа entered
на DateField
должно помочь.
Оригинальный ответ
Для этого вы можете использовать функцию агрегации в Django.Примерно так:
from django.db.models import Count
q = User.objects.annotate(Count('entered')).order_by('-entered')
for user in q[0:30]:
print "%s %s" % (user.entered, user.entered__count)
Обновление
Вы можете нарезать набор запросов и затем передать его в шаблон.
# View
def my_view(*args, **kwargs):
queryset = User.objects.annotate(Count('entered')).order_by('-entered')
context = dict(queryset = queryset[0:30])
return render_to_response('my_template.html', context_instance = RequestContext(request, context))
# Template
{% for user in queryset %}
<td>{{ user.entered }}</td>
<td>{{ user.entered_count }}</td>
{% endfor %}