你会如何排序django mptt树?

时间:2009-05-15 20:54:06

标签: django django-mptt

想象一下,我有一个物体树和它们的人口如:

动物,60

  • aardvark,30
  • bobcat,20
  • 花栗鼠,10

蔬菜,6

  • apple,1
  • beet,2
  • 花椰菜,3

矿物质0

您如何根据每个子级的人口对上述内容进行排序?我想去:

动物,60

  • aardvark,30
  • bobcat,20
  • 花栗鼠,10

蔬菜,6

  • 花椰菜,3
  • beet,2
  • apple,1

矿物质0

我正在建造django的mptt。

3 个答案:

答案 0 :(得分:1)

我刚刚解决了类似的问题。您可以使用order_by,但不能只使用要排序的字段:

MyModel.tree.all().order_by('tree_id', 'level', 'your_sort_field')

答案 1 :(得分:0)

尝试将其添加到models.py元类。

或在子公司QuerySet

答案 2 :(得分:0)

order_by应该有效吗?

YourModel.tree.filter(your=stuff).order_by('order')