赞
踩
def pagination(page,all_data): # 总记录数 all_nums = len(all_data) # 一页大小 PAGE_SIZE = 10 # 获取数据的页码 pages = 0 if all_nums % PAGE_SIZE != 0: pages = int(all_nums / PAGE_SIZE) + 1 else: pages = all_nums / PAGE_SIZE # 页面返回的页码 总共显示5个页码 隔5个变化 flag = int(page / 5) # 前端页码展示个数 page_show_num = 5 page_show = [] for i in range(pages): if int(i / page_show_num) == int(page / page_show_num): if (i) % page_show_num == 0 and i != 0: page_show.append(i) page_show.append(i + 1) # 页面返回的数据 start_row = (page - 1) * PAGE_SIZE all_data = all_data[start_row:start_row + PAGE_SIZE] return {"all_data":all_data,"page_show":page_show,"page":page,"end_page":pages}
调用该函数,只需要传入当前页码和数据列表即可,返回的是分页后的数据字典。分别为分页后的数据列表all_data
,当前页码的页码数page_show
,当前页码page
,最后一个页码end_page
.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。