【发布时间】:2012-07-30 23:20:13
【问题描述】:
我想为这种情况按升序订购我的QuerySet:
PRIORITY_CHOICES = (
(1, "P1"),
(2, "P2"),
(3, "P3"),
(4, "P4"),
(5, "P5"),
)
class Task(models.Model):
name = models.CharField(max_length=255)
priority = models.PositiveIntegerField(choices=PRIORITY_CHOICES)
现在,优先级可以接受 None 值。当我在查看代码中执行此操作时,问题在于订购查询集:
task_list = Task.objects.all().order_by("priority")
这将返回查询集,其中对象按优先级升序排列,无值在前。我想要升序列表,但我想在最后包含 None 值。我有一个庞大的数据库,所以我有兴趣在数据库级别完成这项工作。
【问题讨论】:
-
请参阅stackoverflow.com/questions/5235209/… 以获得答案。
标签: django django-models django-queryset