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
  • 相关阅读:
    [HNOI 2009] 有趣的数列
    [HAOI2015] 树上染色
    [BZOJ 2654] tree
    【图论 搜索】bzoj1064: [Noi2008]假面舞会
    【倍增】7.11fusion
    【二分 贪心】bzoj3477: [Usaco2014 Mar]Sabotage
    【计数】7.11跳棋
    概述「贪心“反悔”策略」模型
    复习计划里的低级错误
    【模拟】bzoj1686: [Usaco2005 Open]Waves 波纹
  • 原文地址:https://www.cnblogs.com/hexintong/p/9619975.html
Copyright © 2011-2022 走看看