有没有办法让用户下载使用回形针附加的图像?
我刚刚建立了这样一个链接:
link_to 'imagename', image.attachment.url
但这会使浏览器打开图像。我希望浏览器要求用户保存图像。有没有办法做到这一点?
答案 0 :(得分:3)
在发送文件时,您可以在此处找到所有信息http://api.rubyonrails.org/classes/ActionController/Streaming.html最重要的切割:
简单下载:
send_file '/path/to.zip'
在浏览器中显示JPEG:
send_file '/path/to.jpeg', :type => 'image/jpeg', :disposition => 'inline'
在浏览器中显示404页面:
send_file '/path/to/404.html', :type => 'text/html; charset=utf-8', :status => 404
要使用此选项之一,您必须在控制器中创建一个新操作,如下所示:
class SomeController < ApplicationController
def download_file
send_file image.attachment.path
end
end
答案 1 :(得分:1)
以下是使用HTML5下载属性的简单解决方案
<%= link_to image.name, image.attachment.url, download: image.attachment.original_filename %>