I am trying to learn how to download text/csv files.
This test function works fine.
def download():
# import and assign handle
import cStringIO
content = cStringIO.StringIO()
# write dummy content
for i in range(0, 10):
content.write("This is the text"+"\r\n")
# assign filename to download file
filename = 'outputfile.txt'
# send content for download
response.headers['Content-Disposition'] = 'attachment; filename='
+ filename
response.headers['Content-Type'] = 'text/csv'
return content.getvalue()
However, when I extract the section that helps to download the file
into a generalized function 'do_download', it does not work. What can
be done to get it to work?
def download():
import cStringIO
content = cStringIO.StringIO()
for i in range(0, 1000):
content.write("This is the text"+"\r\n")
filename = 'outputfile.txt'
do_download(filename, content)
def do_download(filename, content):
response.headers['Content-Disposition'] = 'attachment; filename='
+ filename
response.headers['Content-Type'] = 'text/csv'
return content.getvalue()