在Django 1.5 中 Django Step by Step (九)教程分页实现方法的修正
2014-03-20 20:25
751 查看
在此教程的分页方法已经在1.5版本中不再适用。当前版本的分页在urls配置时实现,其代码如下:
通过设置paginate_by的值,每页显示十条queryset的信息。实现django1.5版本中的分页方法如下:
from django.conf.urls.defaults import * from newtest.address.models import Address info_dict = { # 'model': Address, 'queryset': Address.objects.all(), } urlpatterns = patterns('', (r'^/?$', 'django.views.generic.list_detail.object_list', dict(paginate_by=10, **info_dict)), (r'^upload/$', 'address.views.upload'), (r'^output/$', 'address.views.output'), )
通过设置paginate_by的值,每页显示十条queryset的信息。实现django1.5版本中的分页方法如下:
第一、在views.py中添加listing类
#coding=utf-8 from django.shortcuts import get_object_or_404 , render_to_response , loader from django.template import Context, Template from django.views.generic.list import ListView from address.models import Address from django.http import HttpResponseRedirect ,HttpResponse from django.core.paginator import Paginator,EmptyPage, PageNotAnInteger def listing(request,pagenum): address_list = Address.objects.all() paginator = Paginator(address_list , 4) if not pagenum: pagenum = 1 page = pagenum #if not page: # page = 1 try: addresses = paginator.page(page) except EmptyPage: addresses = paginator.page(paginator.num_pages) except PageNotAnInteger: addresses = paginator.page(1) return render_to_response('address/address_list.html',{"address_list":addresses})
第二、配置相应的url,在urls.py文件中添加如下代码
url(r'^list/((?P[0-9]+)/)?$', 'address.views.listing'),
第三、实现template文件
{% if address_list.has_previous %} 上一页 {% endif %} Page {{ address_list.number }} of {{ address_list.paginator.num_pages }} {% if address_list.has_next %} 下一页 {% endif %}
第四、启动server,打开http://127.0.0.1:8000/address/list/
相关文章推荐
- django 分页效果实现(djangorestframework内置以及django内置方法)
- DEDECMS教程:首页实现分页的两种方法
- Django实现简单分页功能的方法详解
- django实现分页的方法
- django中实现按内容分类,并支持分页的实现方法
- django实现分页的方法
- DEDECMS教程:首页实现分页的两种方法
- Django实现快速分页的方法实例
- Android初级教程——实现共享优先数据方法 Shared Preferences
- Android之Tab分页标签的实现方法一----TabActivity和TabHost的结合(一)
- 分页技术原理与实现之分页的意义及方法(一)
- 一个用JSP实现的分页的类及调用方法
- YII实现分页的方法
- [Step By Step]SAP HANA PAL三次指数平滑算法实现TRIPLESMOOTH
- Android之Tab分页标签的实现方法一-----TabActivity和TabHost的结合(三)
- PHP使用Mysqli类库实现完美分页效果的方法
- YII实现分页的方法
- Django模板语言中的自定义方法filter过滤器实现web网页的瀑布流
- Hibernate分页查询方法实现
- Android中RecyclerView实现分页滚动的方法详解