按2条标准订购django查询集

时间:2014-04-01 12:13:02

标签: django django-queryset

我有一个django模型,其中包含两个字段

class Entry(models.Model):
    #other fields
    date = models.DateField()
    user = models.ForeignKey(User)

我想检索所有用户模型按字母顺序按用户排序,然后按日期升序排序。这会吗?

entries = Entry.objects.all().order_by('user').order_by('date')

但我不认为是这种情况。上述命令的结果是ordered_by日期而不是用户的条目(因为order_by('date')在链中最后被调用)。正确?如何使用条件订购查询集?

1 个答案:

答案 0 :(得分:4)

如果您希望按字母顺序排列用户,则必须按用户名而不是ID排序,例如:

Entry.objects.order_by('user__first_name', 'date')