在控制器中我有:
send_data(data, filename: "payment_file")
在视图中我有:
<%= link_to 'Download File', bank_file_download_path(@bank_file_job),
data: {no_turbolink: true}, class: "btn btn-primary btn-lg btn-block" %>
但它始终显示内联文件的内容。有人可以帮助我吗?
答案 0 :(得分:5)
我想出来了。正如another answer已经指出的那样,需要禁用turbolinks。但该答案中建议的解决方案不起作用,因为在特定页面上禁用它的语法已从turbolinks 5.0开始改变。它应该是这样的。
<%= link_to 'Download File', file_download_path , data: {turbolinks: false} %>
答案 1 :(得分:0)
根据文档,如果您希望下载,则需要设置:disposition
下载
例如
send_data data, filename: "payment_file", disposition: 'download'
http://apidock.com/rails/ActionController/DataStreaming/send_data
答案 2 :(得分:0)
别忘了在文件名中添加格式,例如,文件名应以.pdf结尾,以便浏览器知道该怎么做