Django内置了分页设置,但不够灵活,需要我们自定义分页。
下面代码考虑了利用bootstrap分页组件来实现页面美化,如果不想使用,可以不调用url_format_by_bootstrap函数,即可实现普通分页。
具体的参数和代码均有注释
#! python3
# @Project: mysite2 - pager.py
# @Info : 自定义分页操作
import re
class PageInfo:
"""
:param current_page 当前页码
:param data 要分页的数据
:param path 路由地址(用于生成动态路径)
:param per_page 每页显示条数
:param show_page 显示页码跨度
"""
def __init__(self, current_page, data, path, per_page=10, show_page=10):
self.current_page = current_page
self.per_page = per_page
self.show_page = show_page
self.data = data
self.path = path
self.all_page = self.get_all_page()
def get_all_page(self):
"""计算总页数"""
result, mod = divmod(len(self.data), self.per_page)
if mod:
return result + 1
else:
return result
def create_page(self):
"""创建页码列表"""
if

本文介绍了如何在Django中自定义分页功能,并结合Bootstrap组件进行页面美化。通过提供灵活的参数和代码注释,使得在视图层只需简单传参即可生成分页链接。前端无需额外操作,直接遍历即可展示美观的分页效果。
最低0.47元/天 解锁文章
1078

被折叠的 条评论
为什么被折叠?



