【发布时间】:2011-12-14 07:53:59
【问题描述】:
我想对 mpttmodel 实例进行简单的分页。我有这个模型:
class Thing(MPTTModel):
text = models.TextField()
parent = TreeForeignKey('self', null=True, blank=True, related_name='children')
问题是,当我尝试检索具有偏移量的对象时,例如:
Thing.objects.all()[5:10]
{% recursetree things %} 模板标签引发异常:Caught AssertionError while rendering: Cannot reorder a query once a slice has been taken.
如何解决?
【问题讨论】:
-
你试过 list(Thing.objects.all())[5:10] - 这可能有效,因为 Django 必须在切片之前获取所有数据。您的原始调用在 SQL 中使用了 LIMIT 和 OFFSET 子句。您可以在 python shell 中执行此操作,看看它是否有效。
标签: django django-mptt