文档章节

flask+datatables服务器分页

 超级超级管理员
发布于 2015/09/15 10:56
字数 318
阅读 114
收藏 0

html代码

        <table class="text-c table table-border table-bordered table-bg display table-sort radius table-striped table-hover">
        <script type="text/javascript" src="{{ url_for('static',filename='lib/jquery/1.9.1/jquery.min.js') }}"></script>
            <thead>
                <tr class="text-c">
                    <th width="25"><input type="checkbox" name="all" value="all"></th>
                    <th>queue ID</th>
                    <th>发送人</th>
                    <th>接收人</th>
                    <th>发送时间</th>
                    <th>主题</th>
                    <th>邮件大小</th>
                    <th>发送状态</th>
                    <th>失败原因</th>
                    <th>邮件编码</th>
                    <th>操作</th>
                </tr>
            </thead>
            <tbody>   
            </tbody>
        </table>

js代码

$(document).ready(function() {
    $('.table-sort').DataTable( {
        //"aaSorting": [[ 4, "desc" ]],//默认第几个排序
        "processing": true,
        "serverSide": true,
        "bAutoWidth": true,   //自动宽度
        "iDisplayLength": 4,  //显示条数
        "bFilter": true,   //是否启用过滤
        "bPaginate": true,    //翻页功能
        "bLengthChange": true,   //改变每页显示数量
        "bSort": false,    //排序功能
        "bStateSave": false,//状态保存
        "sPaginationType": "full_numbers",
        "ajax" : "/testdata",
        /*
        "ajax": {
            "url" : "/testdata",
            "type" : "POST",
        },
        */
        "columnDefs": [{
            "orderable": false,//禁用排序
            "targets": [0,1,2,3,5,6,7,8,9,10]   //指定的列
            }]
    } );
} );

server端flask代码

@app.route('/testdata',methods = ['GET', 'POST'])
def testdata():
    pagesize = int(request.args.get('length'))
    start = int(request.args.get('start'))
    search = request.args.get('search[value]')
    message =[]
    if search:
        message_list = Maillog.query.filter(or_(Maillog.mailsubject.like("%%%s%%" % search),Maillog.reason.like("%%%s%%" % search))).order_by(Maillog.mailtime.desc()).offset(start).limit(pagesize).all() 
    else:
        message_list = Maillog.query.order_by(Maillog.mailtime.desc()).offset(start).limit(size).all()
    message_num = len(Maillog.query.order_by(Maillog.mailtime.desc()).all())
    for x,y in enumerate(message_list):
        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
        messagey=[checkl,y.queueid,y.sender,y.receive,y.mailtime,y.mailsubject,y.mailsize,y.mailstatus,y.reason,y.codechar,options] 
        message.append(messagey)
    messagedata= {

    "recordsTotal": message_num,
    "recordsFiltered": message_num,
    "data": message
}
    return json.dumps(messagedata)

© 著作权归作者所有

粉丝 2
博文 189
码字总数 80119
作品 0
成都
运维
私信 提问
《牛腩新闻发布系统》—真、假分页

【前沿】 小编在学习的过程中,学习的过程中听到视频中老师简单介绍了一下真、假分页的区别,下面小编就这个知识点进行一下总结。 【内容】 真分页:由程序控制,每一次只返回一页大小的数据...

wxb141001yxx
2018/03/19
0
0
JSP分页标签库--Pager-taglib

Pager-taglib 2.0 是一套分页标签库,可以灵活地实现多种不同风格的分页导航页面,并且可以很好的与服务器分页逻辑分离。这样一套标签库,你想你的分页效果怎样就能怎样。 pager-taglib,可以...

匿名
2011/08/02
9.4K
2
程序员数据库访问的优化的一些思考

一、数据库访问优化的五个法则 在实际开发,我们主要是需要对SQL语句进行优化,我们需要快速定位能性的瓶颈点,也就是说快速找到我们SQL主要的开销在哪里?根据木桶原理可以知道,最慢的设备...

BravoZu
2014/03/04
185
0
PHP分页+Elasticsearch查询

分页,本质上就是根据给定的页码和偏移量从服务器端请求数据。原理很easy,实践起来却有诸多问题,这里总结一下目前使用的分页demo,通过es请求数据,前端自己构建页码。 的页码显示,有4个参...

dragon_tech
03/30
24
0
聊聊下载DataTable的方式

从服务器下载datatable到本地,有多种处理方式,下面介绍三种。 方式一,将datatable转为txt下载。 步骤: 1.将datatable内容下载到服务器txt中 2.将服务器的txt下载到本地来 3.删除服务器上...

停车坐爱枫林晚
04/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

EDI 电子数据交换全解指南

EDI(Electronic Data Interchange,电子数据交换)技术使得企业与企业(B2B)实现通信自动化,帮助交易伙伴和组织更快更好地完成更多工作,并消除了人工操作带来的错误。从零售商到制造商、物...

EDI知行软件
今天
3
0
CentOS7的LVM动态扩容

# 问题 CentOS7上面的磁盘空间有点紧张,需要扩容。 解决 查询当前磁盘状态 [root@xxx ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTfd0 2:0 1 4K ...

亚林瓜子
今天
4
0
Kafka 0.8 Producer (0.9以前版本适用)

Kafka旧版本producer由scala编写,0.9以后已经废除 示例代码如下: import kafka.producer.KeyedMessage;import kafka.javaapi.producer.Producer;import kafka.producer.ProducerConfig;......

实时计算
今天
5
0
Giraph源码分析(八)—— 统计每个SuperStep中参与计算的顶点数目

作者|白松 目的:科研中,需要分析在每次迭代过程中参与计算的顶点数目,来进一步优化系统。比如,在SSSP的compute()方法最后一行,都会把当前顶点voteToHalt,即变为InActive状态。所以每次...

数澜科技
今天
6
0
Navicat 快捷键

操作 结果 ctrl+q 打开查询窗口 ctrl+/ 注释sql语句 ctrl+shift +/ 解除注释 ctrl+r 运行查询窗口的sql语句 ctrl+shift+r 只运行选中的sql语句 F6 打开一个mysql命令行窗口 ctrl+l 删除一行 ...

低至一折起
今天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部