文档章节

tornado+datatables分页

 超级超级管理员
发布于 2015/09/15 14:44
字数 411
阅读 6
收藏 0

js代码

$(document).ready(function() {
    $('.table-sort').DataTable( {
        //"aaSorting": [[ 4, "desc" ]],//默认第几个排序
        "processing": true,
        "serverSide": true,
        "bAutoWidth": true,   //自动宽度
        "iDisplayLength": 10,  //显示条数
        "bFilter": true,   //是否启用过滤
        "bPaginate": true,    //翻页功能
        "bLengthChange": true,   //改变每页显示数量
        "bSort": false,    //排序功能
        "bStateSave": false,//状态保存
        "sPaginationType": "full_numbers",
        "ajax" : "/returnmessage",
        /*
        "ajax": {
            "url" : "/returnmessage",
            "type" : "POST",
        },
        */
        /* 一直提示DataTables warning : Requested unknown parameter '10' from the data source for row 0 错误,按照网上的添加下面aocolumndefs 就正常了,原因不明 */
        "aoColumnDefs": [{
            "sDefaultContent": '',
            "aTargets": [ '_all' ]
                        }],
        "columnDefs": [{
            "orderable": false,//禁用排序
            "targets": [0,1,2,3,5,6,7,8,9,10]   //指定的列
            }],
    } );
} );

tornado代码,用的torndb

db = torndb.Connection("127.0.0.1:3306","dbname","user","password")
class ReturnmessageHandler(tornado.web.RequestHandler):
    def get(self):
        pagesize =  str(self.get_argument("length")).strip()
        start =  str(self.get_argument("start")).strip()
        search =  str(self.get_argument("search[value]")).strip()
        message =[]
        try:
            if search:
                sql = "SELECT * FROM maillog where mailsubject like '{0}' limit {1} offset {2}".format("%%"+search+"%%",pagesize,start)
                msgnumsql = "select count(*) from maillog where mailsubject like '%s'" %("%%"+search+"%%")
            else:
                sql = 'SELECT * FROM maillog limit %s offset %s' % (pagesize,start)
                msgnumsql = 'select count(*) from maillog'
            print msgnumsql
            messagedata = db.query(sql)
            message_num= db.query(msgnumsql)[0]['count(*)']
            print message_num
            for y in messagedata:
                checkl = '<input name="checkid" type="checkbox" value="%s">' % y.queueid
                options = '<a title="del" href="javascript:;" onclick=message_del("this","%s") class="ml-5" style="text-decoration:none"><i class="Hui-iconfont">&#xe6e2;</i></a>' %y.queueid
                arr = [checkl,y.queueid,y.sender,y.receive,y.mailtime,y.mailsubject,y.mailsize,y.mailstatus,y.reason,y.codechar,options]
                message.append(arr)
            messagedata= {
                "recordsTotal": message_num,
                "recordsFiltered": message_num,
                "data": message
                }
            self.write(json.dumps(messagedata))
        except Exception as e:
            print ("error %s" %format(e))
        finally:
            pass

tornado代码,用的mysql.connector

class ReturnmessageHandler(tornado.web.RequestHandler):
    def get(self):
        pagesize =  str(self.get_argument("length")).strip()
        start =  str(self.get_argument("start")).strip()
        search =  str(self.get_argument("search[value]")).strip()
        message =[]
        conn = mysql.connector.connect(**dbconfig)
        cursor = conn.cursor()
        try:
            msgnumsql = 'select count(*) from maillog'
            cursor.execute(msgnumsql)
            message_num = cursor.fetchall()[0][0]
            if search:
                sql = 'SELECT * FROM maillog where mailsubject lise "%%%s%%" limit %s offset %s' % (search,pagesize,start)
            else:
                sql = 'SELECT * FROM maillog limit %s offset %s' % (pagesize,start)
            cursor.execute(sql)
            messagedata = cursor.fetchall()
            for x,y in enumerate(messagedata):
                message.append(list(y))
            messagedata= {
                "recordsTotal": message_num,
                "recordsFiltered": message_num,
                "data": message
                }
            self.write(json.dumps(messagedata)) 
        except Exception as e:
            print ("%s mysql error! " +format(e))
        finally:
            cursor.close()
            conn.close()

© 著作权归作者所有

粉丝 2
博文 189
码字总数 80119
作品 0
成都
运维
私信 提问
C# 插入、删除Excel分页符

概述 对Excel表格设置分页对我们预览、打印文档时是很方便的,特别是一些包含很多复杂数据的、不规则的表格,为保证打印时每一页的排版美观性或者数据的前后连接的完整性,此时的分页符就发挥...

E_iceblue
2018/05/18
0
0
laravel5自定义分页

laravel5分页处理与laravel4略有区别,laravel5提供了更方便的处理方式,可以方便满足不同分页展示。 laravel4自定义分页:http://php2012web.blog.51cto.com/5585213/1539601 laravel分页处...

ttlxihuan
2016/09/26
0
0
C# 如何处理Word文档分页——插入、删除、阻止分页

本篇文章将介绍C#编程如何来处理Word分页的方法。操作Word中的分页这里分为几种情况的来介绍: 插入分页 1.1在指定段落末尾插入分页 1.2 在指定字符后插入分页 删除分页 3.阻止表格分页 处理...

E_iceblue
2018/06/28
0
0
Mybatis关联结果查询分页方法

在Mybatis分页插件的说明中有如下内容 不支持的情况 对于关联结果查询,使用分页得不到正常的结果,因为只有把数据全部查询出来,才能得到最终的结果,对这个结果进行分页才有效。因而如果是...

Liuzh_533
2014/06/05
11.1K
10
thinkphp简洁、美观、靠谱的分页类

废话不多说先上图预览下;即本博客的分页; 这个分页类是在thinkphp框架内置的分页类的基础上修改而来; 原分页类的一些设计,在实际运用中感觉不是很方便; 1:只有一页内容时不显示分页; ...

白俊遥
2016/03/06
19
0

没有更多内容

加载失败,请刷新页面

加载更多

矩阵中的路径

判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向上下左右移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路...

Garphy
7分钟前
2
0
Hibernate 5 Maven 仓库的 Artifacts

Hibernate artifacts 官方发布的仓库在 JBoss Maven repository 中。Hibernate 发布的 artifacts 也会同时同步到 Maven Central 仓库中,这是一个自动同步进程(可能会有一些延迟)。 Hibern...

honeymoose
55分钟前
4
0
如何学习uni-app?

uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架。 开发者通过编写 Vue.js 代码,uni-app 将其编译到iOS、Android、微信小程序、H5等多个平台,保证其正确运行并达到优秀体验。 <templ...

达叔小生
58分钟前
5
0
OSChina 周一乱弹 —— 后来马云就一心想挣钱了

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 小小编辑:《空帆船》- 朴树 《空帆船》- 朴树 手机党少年们想听歌,请使劲儿戳(这里) @webw :第二次被锁在电梯里了 上次你忘带电梯卡, ...

小小编辑
今天
775
13
关于does not give a valid preprocessing token

#define VFUNC(self) ((##self##)->_vptr) 这样在gcc下会编译失败, VC不会 报pasting ) does not give a valid preprocessing token 据说是因为版本问题 解法:去掉## define VFUNC(self) (......

shzwork
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部