永不言弃分享 http://blog.sciencenet.cn/u/yanhe

博文

django分页paginator

已有 7128 次阅读 2010-3-4 11:06 |个人分类:学习|系统分类:科研笔记

django开发时,一开始不知道还有paginator这个东西,试着用jquery进行分页,但是因为django模板的限制, 总是解决不了循环取定量数据的功能。后来偶然间在Google中发现了paginator这个好东西,问题便迎刃而解。 首先,包含import相关类from django.core.paginator import Paginator, InvalidPage, EmptyPage。 接着,设置分页属性,paginator=Paginator(数据列表, 每页数据量)。 于是就可以获得各种相关的属性: 总页数:paginator.num_pages 总记录数: paginator.count 页的范围: paginator.page_range, 比如 [1, 2, 3, 4] 页数据(list): page.object_list 当前页码: page.number、 以及相关的方法: 是否有下页:page.has_next(), True/False 是否有上页:page.has_previous() 下一页的页码:page.next_page_number() 上一页的页码:page.previous_page_number() 当前页第一个对象: page.start_index() 当前页最后一个对象: page.end_index() 我所使用的view.py中的代码: paginator = Paginator(ret, 1) try: page = int(request.GET.get('page', '1')) except ValueError: page = 1 try: contacts = paginator.page(page) except (EmptyPage, InvalidPage): contacts = paginator.page(paginator.num_pages) 模板中的相关代码:

https://blog.sciencenet.cn/blog-99727-299561.html

上一篇:1
下一篇:三峡真干净啊
收藏 IP: .*| 热度|

0

发表评论 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-11-1 11:27

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部