分页的功能在任何项目当中都很常见,虽然功能实现起来不难,但是每次使用都需要调试一波也是很麻烦的,想起本人第一次调试,那也是分分钟难死我的节奏~
这两天得大神指导,简简单单几步就完美实现分页功能。今天就给大家总结一下这个组件的调用方法,学会之后如果大家再需要在项目中用到分页,那简直就是so easy啦~
01
—
在utils中导入pagination.py文件
在Django项目中,组件类的文件一般都会放在utils中,如果想放在其他地方也可以,需要在import的时候注意一下导入的路径。
代码已经上传到了gitee:https://gitee.com/aihua_ella/share__ella.git,直接把文件下载到本地就可以直接使用。
pagination.py代码截图:
模块中需要的参数都已经标注的十分明确,只要在调用的时候对应传参就可以~
02
—
在视图函数中调用Pagination模块
在需要使用分页功能的视图函数中导入模块,并将调用之后生成queryset数据返回至前端页面。
代码截图:
“具体步骤分解”
1. 从数据库中获取需要在前端分页展示的所有数据,存放在queryset中;
2. 调用Pagination并传参,字段含义可参考pagination.py中注释部分;
3. 获取每个page页需要展示的数据,并将信息存放至xxx_object_list中;
4. 将结果返回至前端页面,page_html 用于生成HTML页面中的页码;
—
在html页面中显示内容
以上两步完成,就已经将后端处理好的数据发送至前端页面,在前端页面中引用一下分页功能就大功告成了,是不是超简单!
代码截图:
注意:因为page_html中返回的数据是html类型的,在前端safe一下,或者在后台发送的时候make_safe一下就前端可以正常显示了。
04
—
最终效果
最终效果:会根据用户点击的分页标签num显示对应的page页面数据
以上几步就是这个分页组件使用的全部流程,是不是超级简单~
写在最后:
第一次写文章,希望能够帮助到看到这篇文章的小伙伴,要是觉得不错的话欢迎分享,有好的建议也随时欢迎大家指导!之后有时间会在这里不定期更新讲一些实用的知识点,今天就先酱紫,?挥手一分钟,拜~