Как я могу получить последнюю запись в определенном queryset?
Вы можете просто сделать что-то подобное, используя reverse()
:
queryset.reverse()[0]
Также, остерегайтесь этого предупреждения из документации Django:
... обратите внимание, что
reverse()
должны обычно вызывается только в QuerySet который имеет определенный заказ (например, при запросе к модели, которая определяет заказ по умолчанию, или когда usingorder_by()
). Если такого заказа нет определяется для заданногоQuerySet
, вызовreverse()
на нем не имеет реального эффект (заказ не был определён до вызоваreverse()
, и будет остаются неопределенными после).
latest (field_name = None)
возвращает последний объект в таблице по дате, используя field_name, указанное в качестве поля даты.В этом примере возвращается последняя запись в таблице в соответствии с
pub_date
поле:Entry.objects.latest ('pub_date')