zoukankan      html  css  js  c++  java
  • django-分页(Pagination)

    Django提供了一个分页器类Paginator(django.core.paginator.Paginator),可以很容易的实现分页的功能。该类有两个构造参数,一个是数据的集合,另一个是每页放多少条数据。Paginator的基本使用如下:

    python manage.py shell

    >>> 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)     #第1页

    >>> page1

    <Page 1 of 2>

    >>> page1.object_list     #第1页的数据

    ['john', 'paul']

    >>> page2 = p.page(2)

    >>> page2.object_list      #第2页的数据

    ['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()   # 本页第一条记录的序数(从1开始)

    3

    >>> page2.end_index()    # 本页最后录一条记录的序数(从1开始)

    4

    >>> p.page(0)               #错误的页,抛出异常

    ...EmptyPage: That page number is less than 1

    >>> p.page(3)              #错误的页,抛出异常

    ...EmptyPage: That page contains no results

  • 相关阅读:
    Virtuabox 虚拟机克隆方法
    CentOS 7 防火墙 出现Failed to start iptables.service: Unit iptables.service failed to load
    Linux系统下安装rz/sz命令及使用说明
    os、sys模块
    collections、random、hashlib、configparser、logging模块
    time、datatime模块
    正则表达式、re模块
    递归、二分查找法
    内置函数、匿名函数
    生成器进阶、生成器表达式
  • 原文地址:https://www.cnblogs.com/weiming-cheng/p/5369304.html
Copyright © 2011-2022 走看看