赞
踩
首先是代码部分
- '''在路由的开头导入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文件如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。