Django Generic Detail视图和限制对象

时间:2011-10-20 11:00:58

标签: django templates models

这是我的urls.py,模板和模型。我想知道的是如何限制字段的条目数量。

Urls.py

a_detail = {
    'queryset': A.objects.all(),
    'template_object_name' : "b",
    'slug_field': 'a',
    'template_name': 'a/detail.html',
}

urlpatterns = patterns('',
    (r'^detail/(?P<slug>[a-zA-Z0-9_.-]+)/$', list_detail.object_detail, a_detail),
)

在我的模板中:

{% for log in b.logs.all %}
     <tr>
         <td>{{ log.timestamp }}</td>
         <td>{{ log.message }}</td>
     </tr>

 {% empty %}
      <tr>
         <td>Kein Timestamp vorhanden</td>
         <td>Keine Log Message vorhanden</td>
      </tr>
 {% endfor %}

我的模特:

class A(models.Model):
    logs = models.ManyToManyField(Log, through='Timestamps', editable=False)

Class Log(models.Model):
    message = models.TextField()
    timestamp = models.DateTimeField(auto_now=True) 

是否可以只显示20条最新的日志消息?

1 个答案:

答案 0 :(得分:1)

您可以像这样设置查询限制:

Model.objects.all()[X:Y]

或者您可以在listView类

上使用paginate
paginate_by = X