按2个条件订购django查询集
我有一个django模型,其中有两个字段按2个条件订购django查询集,django,django-queryset,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') 但我认为情况并非如此。上述命令的结
class Entry(models.Model):
#other fields
date = models.DateField()
user = models.ForeignKey(User)
我想重试所有用户模型,按用户字母顺序排列,然后按日期升序排列。这样行吗
entries = Entry.objects.all().order_by('user').order_by('date')
但我认为情况并非如此。上述命令的结果是按日期排序的条目,而不是按用户排序的条目,因为按“日期”排序的订单是在链中最后调用的。对的如何使用to条件对查询集进行排序?如果希望用户按字母顺序排列,则必须按用户名而不是id进行排序,如:
Entry.objects.order_by('user__first_name', 'date')
如果希望用户按字母顺序排列,则必须按用户名而不是id排序,如:
Entry.objects.order_by('user__first_name', 'date')
我不知道order_by可以接受两个或更多参数。这将按字母顺序排列,然后按日期排列?因此,所有条目的名字都是以首字母开头,但条目是按时间顺序排列的,等等?我不知道order\u by可以包含两个或更多参数。这将按字母顺序排列,然后按日期排列?因此,所有条目的名字都将以首字母开头,但条目是按时间顺序排列的,等等?