我已经尝试了一段时间让tablib无法运行web2py。该代码按预期提供.xls文件,但它已损坏且为空。
import tablib
data = []
headers = ('first_name', 'last_name')
data = tablib.Dataset(*data, headers=headers)
data.append(('John', 'Adams'))
data.append(('George', 'Washington'))
response.headers['Content-Type']= 'application/vnd.ms-excel;charset=utf-8'
response.headers['Content-disposition']='attachment; filename=test.xls'
response.write(data.xls, escape=False)
任何想法? 谢谢!
答案 0 :(得分:0)
每{{}}},response.write
被记录为服务
将文字写入输出页面正文
(我的重点)。 data.xls
不是文字 - 它的二进制内容!要确认问题确实是问题的原因,请尝试使用data.csv
代替 ,因为 文字。
我相信您需要使用response.stream
来发送"二进制内容"作为您的回复(或作为其附件)。