将实现分页的代码封装好了 前端以Bootstarp为例
其他前端框架在getPagingHTML()中修改对应格式即可
'''
用于实现分页的类
---------传入参数---------
request:方法中得到的request对象
queryset:从数据库筛选得到的所有数据的queryset集合
page_size:每页的记录数 默认为10
page_plus:显示的当前页码的前后页数 默认为5
page_param:页码get传参的键名
---------内部参数---------
self.page_param:页码键名
self.page_now:当前页码
self.page_size:每页多少条记录
self.start:每页记录开始的序号
self.end:每页记录结束的序号
self.limit_set:当前页上应有的记录的queryset集合
self.total_count:全部记录的个数
self.total_page:全部页码的个数
self.page_plus:分页选项中当前页码的前后页数
'''
import math,copy
class LimitPage(object):
def __init__(self, request, queryset, page_size=10, page_plus=5, page_param='page'):
self.page_param=page_param
page=request.GET.get(self.page_param,'1')
self.page_now=int(page) if page.isdecimal() else 1
self.page_size=page_size
self.start=(self.page_now - 1) * self.page_size
self.total_count=queryset.count()

该代码实现了一个用于分页的Python类,适用于Bootstarp和其他前端框架。类中包含了获取分页数据、URL参数处理和生成分页HTML的方法。在Django中使用时,通过mark_safe()可以将分页HTML渲染为安全的HTML内容。这个类对于处理大量数据的页面展示非常有用,能够帮助优化用户体验。
最低0.47元/天 解锁文章
1万+

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



