【Django插件使用】django-pagination实现页面分页功能

这里需要用到一个Django插件:django-pagination

作者原来的GitHub地址是: 原地址

现在已经换成新的地址了:新地址

官方的使用说明地址如下:官方说明文档


-------------------------------------------------------

本机完成的软件环境:

Python3.6

Django 1.9.13


现在开始进入正文:

1.安装

打开控制台 输入 

pip install dj-pagination


2.在自己的Django项目的setting.py文件中添加APP

作者说明:

【Django插件使用】django-pagination实现页面分页功能_第1张图片


我的项目实际:

【Django插件使用】django-pagination实现页面分页功能_第2张图片



3.添加中间层文件

作者说明:

【Django插件使用】django-pagination实现页面分页功能_第3张图片

我的项目实际:

【Django插件使用】django-pagination实现页面分页功能_第4张图片



4.添加Django Context文件,注意这里,Django 1.4/1.6/及以上版本的用法均不同

官方说明:

【Django插件使用】django-pagination实现页面分页功能_第5张图片
我的项目实际,我这里是Django1.9.13

【Django插件使用】django-pagination实现页面分页功能_第6张图片



5.添加Django模版tag到自己所需要的分页页面中去

我的项目实际:

【Django插件使用】django-pagination实现页面分页功能_第7张图片

可能还看不清楚,总的来说就几句话,非常简洁:

在自己的html页面中放置tag标签

(记住其中的name你要改成你自己的数据库语句名称)

{% load pagination_tags %}
{% autopaginate name %} 

{% paginate %}



6.最后在APP的views.py中定义你的视图


其中temp就是我的数据库的查询语句,你改成你自己的就行



7.最后实现的效果

【Django插件使用】django-pagination实现页面分页功能_第8张图片

是不是非常简单。

相比起来使用js,jsp的分页脚本,Django分页只需要小小的标签就可以实现。大大的增大的工作效率,

但是有人可能会说看起来不是那么的美观,这个使用调试CSS脚本即可。

在作者源程序的templates/pagination.html,添加到自己的/templates/paginatioin/pagination.html,如何修改相关的分页样式就看自己的需求了。



8.默认选项

添加以下的语句到自己的Django项目中的setting.py中就可以了

PAGINATION_DEFAULT_PAGINATION         每页显示数量  
PAGINATION_DEFAULT_WINDOW               分页显示在当前页左右两边的页数  
PAGINATION_DEFAULT_ORPHANS              最后一页显示的最小页数,默认为0  
PAGINATION_INVALID_PAGE_RAISES_404  当页数不存在时,是否显示404页面


9.替换分页样式

根据第七步骤先新建文件夹,替换新增文件后,我们可以看到文件里面的内容是这样的:

【Django插件使用】django-pagination实现页面分页功能_第9张图片

但是原来的样式看到的分页样式是这样的

【Django插件使用】django-pagination实现页面分页功能_第10张图片

我们替换一下代码,当然可以根据自己的所需求来改

【Django插件使用】django-pagination实现页面分页功能_第11张图片

可以看到样式已经变成

【Django插件使用】django-pagination实现页面分页功能_第12张图片

是不是很美观??


因为现在直接靠拷贝的人太多了,要代评论留邮箱。

你可能感兴趣的:(【Python】)