django order_by query set, ascending and descending
如何按日期降序排列Django中的查询集?
1  | Reserved.objects.all().filter(client=client_id).order_by('check_in')  | 
我只想过滤掉所有由登记日期保留的内容。
1  | Reserved.objects.filter(client=client_id).order_by('-check_in')  | 
注意在
Django文件
1  | Reserved.objects.filter(client=client_id).order_by('-check_in')  | 
"check-in"前面的连字符"-"表示降序。升序是隐含的。
我们不必在filter()之前添加all()。这仍然有效,但是您只需要在需要根查询集中的所有对象时添加all()。
更多信息:https://docs.djangoproject.com/en/dev/topics/db/queries/使用过滤器检索特定对象
您还可以使用以下说明:
1  | Reserved.objects.all().filter(client=client_id).order_by('check_in').reverse()  | 
。
对于升序:
1  | Reserved.objects.filter(client=client_id).order_by('check_in')  | 
对于降序:
1  | 1.  Reserved.objects.filter(client=client_id).order_by('-check_in')  | 
。
或
1  | 2.  Reserved.objects.filter(client=client_id).order_by('check_in')[::-1]  | 
。
它可以移除
1  | Reserved.objects.filter(client=client_id).order_by('-check_in')  | 
添加-将按降序排列。您还可以通过向模型的meta添加默认顺序来设置此值。这意味着当您执行查询时,只需执行mymodel.objects.all(),它将以正确的顺序出现。
1 2 3 4 5 6  | class MyModel(models.Model): check_in = models.DateField() class Meta: ordering = ('-check_in',)  | 
。
升序
1  | Reserved.objects.all().filter(client=client_id).order_by('check_in')  | 
降序
1  | Reserved.objects.all().filter(client=client_id).order_by('-check_in')  | 
。
这里用
这对我有用。
1  | latestsetuplist = SetupTemplate.objects.order_by('-creationTime')[:10][::1]  |