将django页面对象呈现为与bootstrap 3.x/4.x分页兼容的html
django-bootstrap-pagination的Python项目详细描述
django引导分页
引导兼容性
<表><广告>这个应用程序使用twitter的引导分页样式 与django页面对象无缝协作。通过传入一个page对象和 一个或多个可选参数、引导分页栏和寻呼机可以 只需很少的努力就可以完成。
与Django兼容1.2+
安装
PIP
这将安装pypi的最新稳定版本。
pip install django-bootstrap-pagination
下载
从以下位置下载最新的稳定发行版:
http://pypi.python.org/pypi/django bootstrap分页
从以下位置下载最新的开发版本:
github@http://www.github.com/jmcclell/django-bootstrap-pagination
setup.py install
用法
设置
确保在"设置"中的"已安装应用"列表中包含引导分页。py:
INSTALLED_APPS = (
'bootstrap_pagination',
)
另外,在任何使用 分页标记:
{% load bootstrap_pagination %}
最后,确保已启用请求上下文处理器:
# Django 1.8+
TEMPLATES = [
{
# ...
'OPTIONS': {
context_processors': [
# ...
'django.template.context_processors.request',
]
}
}
]
# Django < 1.8
TEMPLATE_CONTEXT_PROCESSORS = {
"django.core.context_processors.request",
)
引导分页
所有可选参数
- 范围-定义要显示的最大页面链接数
- 显示上一个-布尔值。定义是否显示上一个和下一个
链接。(接受
"true"
或"false"
) - 上一个标签-用于上一个链接的标签
- 下一个标签-用于下一个链接的标签
- 先显示后显示-布尔值。定义是否显示第一个和最后一个链接。
(接受
"true"
或"false"
) - 第一个标签-用于第一页链接的标签
- 最后一个标签-用于最后一页链接的标签
- 显示索引范围-布尔值,默认为"false"。如果"true"在分页器中显示项的索引范围而不是页码。例如,如果paginator配置为每页50个项目,show_index_range="true"将显示[1-50、51-100、101-150、151-200、201-250等],而不是[1、2、3、4、5等]。
- url查看名称-一个命名的url引用(例如可能传递到url的引用
模板标记)用作URL模板。必须是可由
reverse()
函数。如果未指定此选项,则标记只是 使用相对url,如?page=1
这在大多数情况下都可以- url_param_name-确定页码的
get
参数的名称。这个 默认为"page"
。如果未定义url视图名称,则此字符串 作为附加到url?{{url_param_name}=1
- url_extra_args-仅当设置了url_view_name时有效。的其他参数 传递到
reverse()
以解析URL。- url_extra_kwargs-仅当设置了
url_view_name
时有效。附加命名 要传递到reverse()
以解析URL的参数。另外, 模板标记将为 页面,因为假设给定一个url_名称,则该页面将 是url正则表达式中的命名变量。在这种情况下, url param_name继续是用于表示 这个名字。也就是说,默认情况下,url param\u name
等于page
因此,在 url由url\u view\u name
引用。这让我们可以使用 分页URL,如/page/1
- 额外分页类-用空格分隔的css类名列表 将添加到顶级的html元素。 特别是,这可以在引导4中使用 安装以添加适当的对齐方式 flexbox实用程序中的类:例如:
调整资源中心
- url_param_name-确定页码的
基本用法
下面将显示一个分页栏,其中包含指向每个页面的链接、上一个链接和下一个链接:
{% bootstrap_paginate page_obj %}
下面将显示一个分页栏,最多包含10个页面链接、上一个链接和下一个链接:
{% bootstrap_paginate page_obj range=10 %}
下面将显示一个分页栏,最多包含10个页面链接、一个第一页链接和一个最后一页链接:
{% bootstrap_paginate page_obj range=10 show_prev_next="false" show_first_last="true" %}
高级用法
给定一个url配置如下:
archive_index_view=ArchiveIndexView.as_view(date_field='date',paginate_by=10,allow_empty=True,queryset=MyModel.all(),template_name='example/archive.html')urlpatterns=patterns('example.views',url(r'^$',archive_index_view,name='archive_index'),url(r'^page/(?P<page>\d+)/$',archive_index_view,name='archive_index_paginated'))
我们可以简单地使用基本用法(附加?页面=)上面有存档目录的URL, 因为django的基于类的通用视图不关心它是如何得到的 页面参数。但是,如果我们想要漂亮的url,比如 存档索引分页的url(即/page/1),我们需要在模板标记中定义url:
pip install django-bootstrap-pagination
0
因为我们使用的是默认的页面参数名"page",而我们的url不需要其他
参数,一切正常。如果我们的url需要额外的参数,我们
将使用可选参数url_extra_args和url_extra_kwargs传递它们。
同样,如果我们的page参数有不同的名称,我们将传入一个不同的
模板标记的url参数
引导分页功能的一个更简单的实现是pager,它
只需提供上一个和下一个链接即可。 所有可选参数 用法 用法与引导分页基本相同。最简单的用法是: 更高级的用法可能如下:引导寻呼机
reverse()
函数。如果这个操作未指定操作,标记只是
使用相对url,如?page=1
这在大多数情况下都可以
get
参数的名称。钍
默认为"page"
。如果未定义url\u view\u name
,则此字符串
作为附加到url?{{url_param_name}=1
url_view_name
时有效。的其他参数
传递到reverse()
以解析URL。url_view_name
时有效。附加命名
要传递到reverse()
以解析URL的参数。另外,
模板标记将为
页面,因为假设给定一个url_名称,则该页面将
是url正则表达式中的命名变量。在这种情况下,
url param_name继续是用于表示
这个名字。也就是说,默认情况下,url param\u name
等于"page"
因此,在
url由url\u view\u name
引用。这让我们可以使用
分页URL,如/page/1
无
1
pip install django-bootstrap-pagination
2
pip install django-bootstrap-pagination
推荐PyPI第三方库