zoukankan      html  css  js  c++  java
  • CRM_分页显示——第18天

    前两页和最后两页和当前页的前后两页用数字显示,其他的用....显示

    page_num<3 #判断前两页
    
    page_num>query_sets.paginator.num_pages-2 #判断最后两页
    
    abs(query_sets.number-page_num)<=2  #判断当前页的前后两页

    区别num_pages和page_range,再判断最后两页的时候我就是使用page_range去比较导致报错range和int是不能比较的:

    num_pages  #总页数
    
    page_range  #页 数的范围
    
    number  #当前页

    判断....显示的时候时,为了防止其他满足条件但是数字和...也没有显示,使用一个标志added_bot_ele=False,当进入这个判断时把他置为true

            else:
                if not added_bot_ele:
                    page_ele+='''<li><a>....</a><li>'''
                    added_bot_ele =True

    这个分页的完整代码如下:

    @register.simple_tag
    def build_paginator(query_sets,filter_condtions):
        #"""页面分页中间会是....显示"""
        """
        :param query_sets: 页面值的对象
        :param filter_condtions: 请求数据的dict
        :return: 返回分页
        """
        sel_ele = ""
        page_ele = ""
        for k ,v in filter_condtions.items():
            sel_ele+="&{0}={1}".format(k,v)
        added_bot_ele = False
        for page_num in query_sets.paginator.page_range:
            #print("page_num",page_num)
            #前量页和最后两页和当前页的前后两页显示,其他的用....显示
            if page_num<3 or page_num>query_sets.paginator.num_pages-2 or abs(query_sets.number-page_num)<=2:
                ele_class =""
                added_bot_ele = False
                if page_num == query_sets.number:
                    ele_class ="active"
                page_ele+='''<li class="%s"><a href="?page=%s%s">%s</a></li>'''%(ele_class,page_num,sel_ele,page_num)
    
            else:
                if not added_bot_ele:
                    page_ele+='''<li><a>....</a><li>'''
                    added_bot_ele =True
    
        return mark_safe(page_ele)
  • 相关阅读:
    利用print2flashsetup.exe文档转swf
    Linux 脚本内容指定用户执行
    第一讲:网络协议概述
    第三讲:ifconfig:最熟悉又陌生的命令行
    第2讲 | 网络分层的真实含义是什么?
    Fiddler -工具使用介绍(附:拦截请求并修改返回数据)(转)
    Fiddler 抓包工具总结(转)
    网络抓包wireshark(转)
    Axure RP 授权码
    第6堂视频课:看到词句就会读-下
  • 原文地址:https://www.cnblogs.com/venvive/p/11318677.html
Copyright © 2011-2022 走看看