【发布时间】:2013-12-05 12:56:45
【问题描述】:
有没有办法使用 Django-MPTT 的 {% recursetree %} 呈现部分树而不从数据库中检索整个树?我需要显示深度优先搜索遇到的前 20 个节点。
其中任何一个(不检索完整树)都会导致异常:
# resulting querySet passed to {% recursetree %} in template
Thing.objects.all()[:20]
# directly sliced in template
{% recursetree all_nodes|slice:":20" %}
AssertionError while rendering: Cannot reorder a query once a slice has been taken。
另一方面,这确实有效,但会检索整个树:
# resulting querySet passed to {% recursetree %} in template
list(Thing.objects.all())[:20]
如何在不从数据库中检索整个树的情况下做到这一点?
【问题讨论】:
标签: django django-templates django-mptt mptt