Django博客生成下一个/上一个条目

时间:2010-06-22 17:56:18

标签: python django

在博客应用程序(我主要是根据教程构建)中,我希望在帖子的单页浏览量上有下一个和上一个帖子链接。博客应用程序的urls.py文件如下所示:

from django.conf.urls.defaults import *
from django.views.generic import list_detail
from sandy.blog.models import Post


urlpatterns = patterns('',
    url(r'^post/(?P<slug>.*)/$', list_detail.object_detail,
    {'queryset': Post.objects.all(), 'template_object_name': 'post',},
    name="single_post"),
    url(r'^$', list_detail.object_list,
    {'queryset': Post.objects.order_by('-published'), 'template_object_name': 'post',},
    name="blog_home"),

在单页模板中,我想做这样的事情:

<p><a href="{% url single_post slug=[how would I derive it???] %}">Previous Post</a></p>

我将Post对象作为帖子在模板中可用,因此我可以执行类似

的操作 当前页面的

{%url single_post slug = post.slug%},但希望能够执行类似slug = post [-1] .slug或其他任何内容的操作。是否有一个简单的电池包含这样做?

当然需要进行一些检查(看是否有先前的帖子),我也需要重复一遍“下一篇文章”链接。

我一直在四处走动,让它发挥作用。有没有办法,或者我被迫写出页面的完整视图。

1 个答案:

答案 0 :(得分:4)

您需要get_next_by_FOO()get_previous_by_FOO()模型方法。