python - 使用 SQLALCHEMY 和 Pandas 生成 Excel
问题描述
我正在尝试导出使用 SQLALCHEMY 进行的查询的结果。我可以下载该文件,但我收到的列没有标题名称,也不完整。在这里,我加入了我收到的图像: 但我的数据库具有这种格式:
@app.route('/excel', methods=['GET', 'POST'])
def exportexcel():
data = Data.query.all()
df = pd.DataFrame(list(data))
filename = app.config['UPLOAD_FOLDER']+"/autos.xlsx"
print("Filename: "+filename)
writer = pd.ExcelWriter(filename)
df.to_excel(writer, sheet_name='Registrados')
writer.save()
return send_file(filename)
有人知道我该怎么做才能在 excel 中检索我的数据库尽可能相似。
解决方案
def to_dict(row):
if row is None:
return None
rtn_dict = dict()
keys = row.__table__.columns.keys()
for key in keys:
rtn_dict[key] = getattr(row, key)
return rtn_dict
@app.route('/excel', methods=['GET', 'POST'])
def exportexcel():
data = Data.query.all()
data_list = [to_dict(item) for item in data]
df = pd.DataFrame(data_list)
filename = app.config['UPLOAD_FOLDER']+"/autos.xlsx"
print("Filename: "+filename)
writer = pd.ExcelWriter(filename)
df.to_excel(writer, sheet_name='Registrados')
writer.save()
return send_file(filename)
推荐阅读
- discord.js - 我如何从特定频道获取嵌入消息?[Discord.js V12]
- python - 如何在声明中获得多年的最终报告
- maven - CircleCI 在我的 Maven Java 项目上运行零测试
- flutter - 不能无条件访问属性“id”,因为接收者可以为“null”
- c++ - 现代 C++ 中的 WaitForSingleObject 和 WaitForMultipleObjects 等效吗?
- bash - 在 bash 的 while 循环中运行 curl
- python - 通过字符串查找类
- javascript - 后退按钮在响应式菜单中不起作用
- sql - 创建一个名为“select_city”的过程
- python - 如何调用模块对象?