我有一个rails应用程序,允许用户下载生成的CSV文件.下载文件后,我想将用户重定向到新的URL或操作.在send_data之后有一个重定向的技巧吗?
我想做这样的事情(这不起作用):
send_data(output,:type => content_type,:filename => "myfile.csv")
redirect_to :controller => 'my_controller', :action => 'download_done'
Sar*_*Mei 12
send_data 是一个渲染,所以你不能在控制器方法后做任何事情.
围绕它的方式都涉及Javascript.这是我一起攻击并且从未真正喜欢的一种方式:
最终我将文件生成转换为后台作业.然后,用户转到作业页面(不需要后续重定向)来获取文件.
小智 8
就我而言,我在第 1 页有一个下载链接,成功下载后,我只想将它们重定向到第 1 页(具有下载链接的同一页面)。如果您也有和我一样的情况,请执行以下操作。
只需在您的下载按钮/链接中添加即可target="_blank"。这仅适用于send_data渲染方法。如果你使用send_file,你必须在 js 中处理它。
它重定向到单独的页面并弹出下载文件保存选项。保存后,它会关闭新选项卡并将它们带到您单击下载按钮的页面。
| 归档时间: | 
 | 
| 查看次数: | 11860 次 | 
| 最近记录: |