使用flask_excel模块将数据库以excel文件格式下载

首先是代码部分

'''在路由的开头导入flask_excel,注意一定要用init_excel,否则会出现错误:ValueError: View function did not return a response'''
import flask_excel as excel
excel.init_excel(app)
# 备份数据库数据
@main.route("/sensor_hist_download/<int:item_id>/", methods=["GET"])
@login_req
@main_role
def exp_excel(item_id=None):
    sensor_hist = db.session.query(
        '''这里将要备份的记录输入,第一个字段是数据表名称,第二个字段是数据名称,第三个字段固定label'''
        Sensor_hist.sensor_id.label('传感器号'),
        Sensor_hist.sensor_online.label('传感器在线状态'),
        Sensor_hist.sensor_data.label('传感器数据'),
        Sensor_hist.sensor_thre_top.label('阈值上限'),
        Sensor_hist.sensor_thre_bottom.label('阈值下限'),
        Sensor_hist.sensor_type.label('传感器类型'),
        Sensor_hist.item_id.label('工程号'),
        Sensor_hist.device_id.label('解调仪号'),
        Sensor_hist.channel_id.label('通道号')
    ).order_by(Sensor_hist.data_time)
    query_sets = sensor_hist.all()
    return excel.make_response_from_query_sets(
        query_sets,
        #这里写入的标签作为excel文件的列名
        column_names=[
            '传感器号',
            '传感器在线状态',
            '传感器数据',
            '阈值上限',
            '阈值下限',
            '传感器类型',
            '工程号',
            '解调仪号',
            '通道号'
        ],
        # 这里设置文件格式和文件名
        file_type='xlsx',
        file_name='sensor_hist.xlsx'
    )

因为要用xlsx/xls格式,需要pip安装这两个模块:

pip install pyexcel-xls
pip install pyexcel-xlsx
最终效果如下:

excel文件如下:

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值