您好我正在使用python进行编程,我希望根据next
字段以正确的顺序显示列表。我的模型看起来像:
任务()
id name next
001 task1 007
005 task2 000
007 task3 005
我不知道如何显示它,因为我只知道基本的
taskList = Task.objects.all()
所以当我显示它时,它应该看起来像
task1
task3
task2
第一个数据的id为001,其下一个字段为007,这意味着下一个数据的id应为007,其下一个字段为005,依此类推
答案 0 :(得分:0)
在我看来,最好的方法是添加Position
字段。您可以重新计算Position
覆盖save()
方法,但要小心锁定和性能。
另外,您可以查看为您完成工作的django-positions。
答案 1 :(得分:0)
taskList = Task.objects.all().order_by('next')
您也可以使用Meta选项
将其直接添加到模型中 class Task(models.Model):
...
class Meta:
ordering = ['next']