免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3095 | 回复: 1
打印 上一主题 下一主题

python读取数据库打印到web上如何分页? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-11-29 16:23 |只看该作者 |倒序浏览
  1. conn = sqlite3.connect("/usr/audit.db3")
  2. cu = conn.cursor()
  3. cu.execute('select * from log limit 0,20')

  4. print '''<table class=bgurl width="551" border="0" cellspacing="1" cellpadding="1" bgcolor="#ffffff">
  5.       <tr id=tblhdr>
  6.        <td><div align="center">月份</div></td>
  7.         <td><div align="center">日期</div></td>
  8.         <td><div align="center">时间</div></td>
  9.         <td><div align="center">IP</div></td>
  10.         <td><div align="center">号码</div></td>
  11.         <td><div align="center">类型</div></td>
  12.      </tr>
  13.      '''
  14. for recs in cu:
  15.     print """

  16.      <tr id=row1>
  17.        <td><div align="center">%s</div></td>
  18.        <td><div align="center">%s</div></td>
  19.        <td><div align="center">%s</div></td>
  20.        <td><div align="center">%s</div></td>
  21.        <td><div align="center">%s</div></td>
  22.         <td><div align="center">%s</div></td>
  23.      </tr>

  24.     """  % (recs[0],recs[1],recs[2],recs[4],recs[5],recs[3])
复制代码

论坛徽章:
0
2 [报告]
发表于 2011-12-02 14:58 |只看该作者
举例¶

类Paginator,带两个构造参数,一个就是数据的集合,另一个表示每页放几个数据。

>>> from django.core.paginator import Paginator
>>> objects = ['john', 'paul', 'george', 'ringo']
>>> p = Paginator(objects, 2)

>>> p.count
4
>>> p.num_pages
2
>>> p.page_range
[1, 2]

>>> page1 = p.page(1)
>>> page1
<Page 1 of 2>
>>> page1.object_list
['john', 'paul']

>>> page2 = p.page(2)
>>> page2.object_list
['george', 'ringo']
>>> page2.has_next()
False
>>> page2.has_previous()
True
>>> page2.has_other_pages()
True
>>> page2.next_page_number()
3
>>> page2.previous_page_number()
1
>>> page2.start_index() # The 1-based index of the first item on this page
3
>>> page2.end_index() # The 1-based index of the last item on this page
4

>>> p.page(0)
...
EmptyPage: That page number is less than 1
>>> p.page(3)
...
EmptyPage: That page contains no results

Note

Paginator 的第一个参数可以是list,tuple,QuerySet 或者任意对象————只要它有 count() 或者 __len__() 函数。 Django后台会先尝试调用 count()``。如果 不可行,再定要 ``len()


欢迎加入88519564 QQ  群一起交流共同进步
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP