Eri*_*Red 11 python csv pylons
我正在尝试从我的webapp中的操作返回CSV,并提示用户下载文件或从电子表格应用程序打开它.我可以将CSV吐出到屏幕上,但是如何更改文件的类型以便浏览器识别出这不应该显示为HTML?我可以使用csv模块吗?
import csv
def results_csv(self):
data = ['895', '898', '897']
return data
Run Code Online (Sandbox Code Playgroud)
PAG*_*PAG 12
要告诉浏览器您提供的内容类型,您需要将Content-type标题设置为"text/csv".在您的Pylons功能中,以下应该完成这项工作:
response.headers['Content-type'] = 'text/csv'
PAG是正确的,但此外,如果您想为下载的文件建议名称,您也可以设置 response.headers['Content-disposition'] = 'attachment; filename=suggest.csv'
是的,你可以使用csv模块:
import csv
from cStringIO import StringIO
Run Code Online (Sandbox Code Playgroud)
...
def results_csv(self):
response.headers['Content-Type'] = 'text/csv'
s = StringIO()
writer = csv.writer(s)
writer.writerow(['header', 'header', 'header'])
writer.writerow([123, 456, 789])
return s.getvalue()
Run Code Online (Sandbox Code Playgroud)