【发布时间】:2016-08-30 13:40:57
【问题描述】:
我修改了https://groups.google.com/forum/#!msg/web2py/HQU5kD0tGag/LGtjlikzWdsJ 无需先将其保存到磁盘即可下载 csv 文件:
在视图中,有一个“下载”按钮,因此当单击时,视图不会改变,但会下载文件:
{{=A(T('Download'), _type='button', _onclick=\
"jQuery('#PLID').val('%s');ajax('%s',['arg1','arg2'],':eval');
"%( request.vars.my_form_variable),URL('dlCSV') ), _class='btn btn-primary') }}
在控制器中:
def dlCSV():
:
:
:
rows=db(query).select(selected_fields)
doc64=embed64(data=str(rows),extension='application/csv')
response.headers['Content-Type'] = 'text/csv'
attachment = 'attachment;filename=data.csv'
response.headers['Content-Disposition'] = attachment
return 'window.location="%s";' % doc64
这很好用。只有一个问题:当我单击“下载”按钮时,文件名是“未知”。如何将文件名更改为“exported.csv”或其他名称?
【问题讨论】: