Как я могу оформить заказ по убыванию моего запроса в django по дате?
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
.
-
перед именем столбца подразумевается нисходящий порядок без значительного-
возрастания.Дефис «-» перед «check_in» указывает на нисходящий порядок. Восходящий порядок подразумевается.
Нам не нужно добавлять all () перед filter (). Это все равно будет работать, но вам нужно добавить all () только тогда, когда вы хотите получить все объекты из корневого QuerySet.
Подробнее об этом здесь: https://docs.djangoproject.com/en/dev/topics/db/queries/#retrieving-specific-objects-with-filters
источник
Вы также можете использовать следующую инструкцию:
источник
.all().filter()
не нужно..filter()
в одиночку это хорошо.по возрастанию:
по убыванию:
или
источник
Это работает, удаляя
.all()
:источник
Добавление - упорядочит его в порядке убывания. Вы также можете установить это, добавив порядок по умолчанию к мета вашей модели. Это будет означать, что когда вы делаете запрос, вы просто делаете MyModel.objects.all (), и он будет появляться в правильном порядке.
источник
По возрастанию
В порядке убывания
-
(дефис) используется для указания здесь в порядке убывания.источник
Это работает для меня.
источник
67
Reserved.objects.filter (клиент = client_id) .order_by ( '- check_in')
'-' указывает на нисходящий порядок, а для восходящего - просто укажите атрибут класса
источник