我正在使用Django框架进行我的第一个项目,并决定创建一个博客,因为在网上很容易找到相关的资料。然后,我发现了Paginator模块,并决定使用它。问题是,每当我添加一篇文章时,它都会添加到数据库的末尾,所以到目前为止,我的博客显示的是旧的文章。
因此,我决定使用.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时它可以工作,但此外则无法工作。
我认为这是一个非常奇怪的行为,我查看了一下但没有找到任何有助于解决这个问题的东西。我做错了什么吗?