Я нахожусь в своем первом проекте с фреймворком Django, и я решил создать блог, так как его легко найти в Интернете. Затем я узнал о модуле Paginator и решил использовать его. Проблема в том, что всякий раз, когда я добавляю сообщение, он доходит до конца базы данных, поэтому у меня есть блог, который пока покажет старые сообщения.list.reverse() не работает должным образом в Django
Из-за того, что я решил использовать .reverse(), например:
def index(request):
posts = Post.objects.all()
posts.reverse()
paginator = Paginator(posts, 2)
try:
page = int(request.GET.get("page", "1"))
except ValueError:
page = 1
try:
posts = paginator.page(page)
except (InvalidPage, EmptyPage):
posts = paginator.page(paginator.num_pages)
return render_to_response('index.html', {
'Posts': posts,
'Sideposts': Sidepost.objects.all(),
})
Единственная проблема, это не работает, по крайней мере, не с Paginator. Когда я перестаю использовать Paginator, он работает, но в противном случае это не так.
Я думаю, что это действительно странное поведение, и я осмотрелся, но не смог найти ничего, что помогло мне с этой проблемой. Я что-то делаю неправильно?
Это тоже работает, спасибо! – AugustoQ
Это лучше, потому что это позволит разбиению на страницы загружать только то, что вам нужно для страницы. Кастинг в список загружает все в запросе. – joshua