2009-07-15 3 views
2

Я пытаюсь получить последние 5 сообщений (по времени публикации) В views.py, если я попробую blog_post_list = blogPosts.objects.all()[:5] Он возвращает первые 5 элементов объектов blogPosts, как можно Я отменяю это, чтобы отыскать последние?Как получить последние элементы x в Django

Приветствия

ответ

4

На основании ответа Nick Presta и ваш комментарий, попробуйте:

blog_post_list = blogPosts.objects.all().order_by('-pub_date')[:5] 
8
blog_post_list = blogPosts.objects.all().reverse()[:5] 
# OR 
blog_post_list = blogPosts.objects.all().order_by('-DEFAULT_ORDER_KEY')[:5] 

Я предпочитаю первый.

+0

первый, кажется, не работает для меня. И для второго я получаю эту ошибку: «Пойманное исключение при рендеринге: не удается разрешить ключевое слово« DEFAULT_ORDER_KEY »в поле. Варианты: id, postInput, pub_date« – 2009-07-15 20:31:51

+0

DEFAULT_ORDER_KEY - ваш ключ заказа. Вы можете сортировать по id и т. Д. Для приложения в блоге вы можете заказать последнюю дату, в этом случае код будет: blogPosts.objects.all(). Order_by ('last_posted'). –

Смежные вопросы