如何通過按日期降序在django中設置我的查詢集?django order_by查詢集,升序和降序
Reserved.objects.all().filter(client=client_id).order_by('check_in')
我只是想過濾從check_in日期的所有保留。
如何通過按日期降序在django中設置我的查詢集?django order_by查詢集,升序和降序
Reserved.objects.all().filter(client=client_id).order_by('check_in')
我只是想過濾從check_in日期的所有保留。
Reserved.objects.filter(client=client_id).order_by('-check_in')
注意check_in
之前的-
。
Reserved.objects.filter(client=client_id).order_by('-check_in')
連字符 「 - 」,在 「CHECK_IN」 的前面表示降序排列。暗示升序。
我們不必在filter()之前添加all()。這仍然有效,但是當你想要從根QuerySet獲取所有對象時,只需要添加all()。
更多關於此這裏: https://docs.djangoproject.com/en/dev/topics/db/queries/#retrieving-specific-objects-with-filters
比接受的答案更清潔,沒有理由擁有.all()。filter(xxx)。 – 2016-03-06 07:26:14
它的工作原理去除.all()
:
Reserved.objects.filter(client=client_id).order_by('-check_in')
這與@ leonardo-z的答案基本相同,不是嗎? – 2016-09-26 16:49:52
而不是重新發布相同的答案,它投票。 – AKSiddique 2017-07-05 07:37:42
您還可以使用下面的指令:
Reserved.objects.all().filter(client=client_id).order_by('check_in').reverse()
你可以,但我強烈懷疑讓SQL服務器處理命令更有效率,至少在理論上是這樣。不過,這很好,很清楚。 – 2016-09-26 16:51:11
按升序排列:
Reserved.objects.filter(client=client_id).order_by('check_in')
爲降序:
1. Reserved.objects.filter(client=client_id).order_by('-check_in')
或
2. Reserved.objects.filter(client=client_id).order_by('check_in')[::-1]
這是爲我工作。
latestsetuplist = SetupTemplate.objects.order_by('-creationTime')[:10][::1]
添加 - 將按降序排列。 您也可以通過爲模型的元素添加默認排序來設置此項。這意味着當你做一個查詢時,你只需要做MyModel.objects.all(),它會以正確的順序出來。
class MyModel(models.Model):
check_in = models.DateField()
class Meta:
ordering = ('-check_in',)
這就是它的可愛。謝謝。 – Ayush 2017-10-26 04:57:52