我的博客帖子有这个视图功能。
def home(request):
posts = Post.objects.all().order_by("-pub_date")
paginator = Paginator(posts, 5)
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_page)
return render_to_response("home.html",
dict(posts=posts, user=request.user))
在我的主urls.py文件中,我有以下内容:
urlpatterns = patterns('',
url(r'^', 'blog.views.home', name='home'),
url(r'^admin/', include(admin.site.urls)),
)
另外,我没有在我的app文件夹下创建urls.py文件。
我在home.html文件中有这个。
{% block footer %}
<ul class="pager">
{% if posts.object_list and posts.paginator.num_pages > 1 %}
{% if posts.has_previous %}
<li><a href="{{ posts.previous_page_number }}">Previous</a></li>
{% endif %}
{% if posts.has_next %}
<li><a href="{{ posts.next_page_number }}">Next</a></li>
{% endif %}
</ul>
{% endif %}
</div><!-- /.blog-main -->
{% endblock %}
到目前为止,主页(home.html)在我的本地服务器上正确呈现。但是,当我点击下一页链接时,它会将我发送给
127.0.0.1:8000/2
并显示相同的页面。此外,上一个按钮未显示。
问题:我做错了什么吗?如何在网址调度程序中正确地将我的观点引导到第2页?
帮助表示感谢。谢谢。