将Tablib库与Web2py一起使用

时间:2015-03-27 21:15:02

标签: python web2py web2py-modules

我已经尝试了一段时间让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)

任何想法? 谢谢!

1 个答案:

答案 0 :(得分:0)

每{{}}},response.write被记录为服务

  

文字写入输出页面正文

(我的重点)。 data.xls 不是文字 - 它的二进制内容!要确认问题确实是问题的原因,请尝试使用data.csv代替 ,因为 文字。

我相信您需要使用response.stream来发送"二进制内容"作为您的回复(或作为其附件)。