zoukankan      html  css  js  c++  java
  • python 分页插件

    class MyPagePlugin(object):
        def __init__(self,totalItem,currentPage,url_a=None,perPageItem=3,showAPage=9):
            '''
    
            :param totalItem: 总的条目数
            :param perPageItem: 每页显示的条目
            :param showAPage: 显示的页面链接,默认为9
            :param currentPage: 显示的页面链接,默认为9
            :param url_a: 组成页码的url
            '''
            self.total_itme=totalItem
            self.per_page_item=perPageItem
            self.show_a_page=showAPage
            self.current_page=currentPage
            self.a_page_list=[]
            self.total_page=self.get_total_page
            self.url_a=url_a
        #列表的开始
        @property
        def start(self):
            return (self.current_page-1)*self.per_page_item
        #列表的结束
        @property
        def end(self):
            return self.current_page*self.per_page_item
        #总页数
        @property
        def get_total_page(self):
            total_pages_num, b = divmod(self.total_itme, self.per_page_item)
            total_pages_num = total_pages_num + 1 if b else total_pages_num  # 总页数
            return total_pages_num
        #页码a链接列表
        @property
        def getListPageA(self):
    
            ##############页码链接列表####################
            # 首页
            page_first = "<a href='%s?p=%s'>首页</a>" % (self.url_a,1)
            self.a_page_list.append(page_first)
            if self.current_page <= 5:
                for a_item in range(1, 9 + 1):
                    if self.current_page == a_item:
                        tem_a = "<a style='font-size:20px;color:red;' href='%s?p=%s'>%s</a>" % (self.url_a,a_item, a_item)
                    else:
                        tem_a = "<a href='%s?p=%s'>%s</a>" % (self.url_a,a_item, a_item)
                    self.a_page_list.append(tem_a)
            elif self.current_page >= self.total_page - 4:
                for a_item in range(self.total_page - 9 + 1, self.total_page + 1):
                    if self.current_page == a_item:
                        tem_a = "<a style='font-size:20px;color:red;'  href='%s?p=%s'>%s</a>" % (self.url_a,a_item, a_item)
                    else:
                        tem_a = "<a href='%s?p=%s'>%s</a>" % (self.url_a,a_item, a_item)
                    self.a_page_list.append(tem_a)
            else:
                for a_item in range(self.current_page - 4, self.current_page + 4 + 1):
    
                    if self.current_page == a_item:
                        tem_a = "<a style='font-size:20px'  href='%s?p=%s'>%s</a>" % (self.url_a,a_item, a_item)
                    else:
                        tem_a = "<a href='%s?p=%s'>%s</a>" % (self.url_a,a_item, a_item)
                    self.a_page_list.append(tem_a)
            # 末页
            page_last = "<a href='%s?p=%s'>末页</a>" % (self.url_a,self.total_page)
            self.a_page_list.append(page_last)
            return  self.a_page_list
  • 相关阅读:
    【转载】python自动提取文本中的时间(包含中文日期)
    【转载】PCA降维
    【转载】从头到尾彻底理解KMP算法
    【转载】傅里叶分析之掐死教程(完整版)更新于2014.06.06(Heinrich)
    【转载】白素贞的身世之谜
    React 路由参数改变页面不刷新问题
    前端学习资源笔记
    Nginx配置网站默认https
    基于Docker搭建大数据集群(一)Docker环境部署
    基于Docker搭建大数据集群(三)Hadoop部署
  • 原文地址:https://www.cnblogs.com/hexintong/p/9619975.html
Copyright © 2011-2022 走看看