Получите последнюю запись в queryset

Как я могу получить последнюю запись в определенном queryset?

75
задан Stephen 3 February 2010 в 09:47
поделиться

2 ответа

Вы можете просто сделать что-то подобное, используя reverse():

queryset.reverse()[0]

Также, остерегайтесь этого предупреждения из документации Django:

... обратите внимание, что reverse() должны обычно вызывается только в QuerySet который имеет определенный заказ (например, при запросе к модели, которая определяет заказ по умолчанию, или когда using order_by()). Если такого заказа нет определяется для заданного QuerySet, вызов reverse() на нем не имеет реального эффект (заказ не был определён до вызова reverse(), и будет остаются неопределенными после).

73
ответ дан 24 November 2019 в 11:24
поделиться

Django Doc :

latest (field_name = None) возвращает последний объект в таблице по дате, используя field_name, указанное в качестве поля даты.

В этом примере возвращается последняя запись в таблице в соответствии с pub_date поле:

 Entry.objects.latest ('pub_date')
122
ответ дан 24 November 2019 в 11:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: