Django分页叉,支持Django 1.11

mysociety-django-pagination的Python项目详细描述


如何使用django分页

django-pagination允许轻松的digg样式分页,而无需修改 你的观点。

在你的项目中设置它有5个步骤(不包括 安装,在同一目录的install.txt中介绍。)

  1. 在设置的INSTALLED_APPS部分列出此应用程序 文件。您的设置文件可能类似于:

    INSTALLED_APPS = (
        # ...
        'pagination',
    )
    
  2. 安装分页中间件。你的设置文件可能看起来像 例如:

    MIDDLEWARE_CLASSES = (
        # ...
        'pagination.middleware.PaginationMiddleware',
    )
    
  3. 如果尚未在设置中添加,请添加请求上下文处理器。 注意,默认情况下上下文处理器是隐式设置的,所以要设置它们 显然,您需要将此代码复制并粘贴到 值模板上下文处理器:

    ("django.core.context_processors.auth",
    "django.core.context_processors.debug",
    "django.core.context_processors.i18n",
    "django.core.context_processors.media",
    "django.core.context_processors.request")
    
  4. 在模板顶部添加此行以加载分页标记:

    {% load pagination_tags %}

  5. 决定要分页的变量,并使用 在迭代变量之前自动转移该变量上的标记。这个可以 以两种形式中的一种为例(以规范的object_list为例 变量):

    {% autopaginate object_list %}

    这假设您希望每页有默认的20个结果。 如果您想指定自己每页的结果量,可以 这样指定:

    {% autopaginate object_list 10 %}

    注意,这将用当前页的列表替换object_list,因此 您可以像平常一样遍历object_list

  6. 现在要显示当前页和可用页,所以 在使用autopaginate之后的某个地方,使用paginate包含标记:

    {% paginate %}

    这不需要任何论据,但假设您已经 称为自动转移,所以一定要先这样做。

就这样!您现在已经对object_list进行了分页,并为该站点的用户提供了 一种在不同页面之间导航的方法-所有这些都不需要触摸您的视图。

可选设置

在django分页中,没有必需的设置。然而,有一个 用于更改 分页标记。以下是概述:

PAGINATION_DEFAULT_PAGINATION
如果未指定编号,则显示在页面上的默认项目数。
PAGINATION_DEFAULT_WINDOW
当前页左右的项目数 显示(表示省略号)。
PAGINATION_DEFAULT_ORPHANS

允许的孤儿数。根据Django的文件, 孤儿定义为:

The minimum number of items allowed on the last page, defaults to zero.
PAGINATION_INVALID_PAGE_RAISES_404
确定无效页是否引发Http404,或仅设置 invalid_page上下文变量。True执行前者和False 是后者。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何创建Restful服务并将其部署到OSGi容器?   java如何获取用户在EditText中输入的时间并从中扣除5小时30分钟?   java用户无法注销firebase 安卓   java Undertow始终将字符集添加到ContentType头,即使它不是文本MIME类型   java LocalBroadcastManager未正确接收消息   foreach在Java中有没有比For循环更好的方法可以灵活地遍历集合?   java如何在安卓上移动球   在OSGi下的Log4j中使所有记录器异步时,java ClassNotFoundException   java未知输入字节长度转换为int   java测试工厂在使用前缀命名时抛出NPE   对象的副本(JAVA)   java SP20310:无法打开文件。sql   java Spring安全性仅为一条路径添加安全性   java在idea中获取菱形运算符的编译错误