#add this to views.py
from django.core.paginator import Paginator,InvalidPage, EmptyPage
def index(request, page=1):
list = pnews.objects.all().order_by('-pdate')
paginator = Paginator(list, 5)
try:
results = paginator.page(page)
except(InvalidPage, EmptyPage):
results = paginator.page(paginator.num_pages)
return render_to_response('news/homepage.html', {"results":results})
#this to urls.py modify that for your urls
url(r'^news/(?P\d+)/$', 'cms.news.views.index', name='gmsnews'),
#this to your template so you can visit other pages
<div class="paginator-bottom">
{%if results.has_previous%}
<a href="{%url gmsnews results.previous_page_number%}">previous</a>
{%endif%}
<p>Page {{results.number}} of {{results.paginator.num_pages}}</p>
{%if results.has_next%}
<a href="{%url gmsnews results.next_page_number%}">next</a>
{%endif%}
</div>
#note that you have to call pages like this
{% for pnews in results.object_list %}
#not like
{% for pnews in results %}
Comments
Is there a reason why you opted for your own approach over http://code.google.com/p/django-pagination/ ?
#
i just dont want to add more app. to my project. this few code enaugh for me.
#
Just use object_list generic view.
#