我使用回形针创建了文件上传!文件上传应该是。 比我添加这样的文件下载方法:
def download
sample = Sample.find(params[:id])
send_file upload.sample.path,
:filename => upload.sample_file_name,
:type => upload.sample_content_type,
:disposition => 'attachment'
flash[:notice] = "Your file has been downloaded"
end
但我无法弄清楚,我应该在演出动作中加入什么以便能够下载文件?
我得到了这个:
<td><%= @sample.upload_file_name =%></td>
<%= link_to 'Download', :action => :download, :path =>@sample.upload.url, :type => @sample.upload_content_type %>
但它显示错误:无法找到带有id = download
的Sample任何人都可以帮助我吗?
答案 0 :(得分:2)
认为你需要改变你的link_to来发送:id(这是控制器动作用params [:id]寻找的)
<%= link_to 'Download', :action => :download, :id => @sample.id %>
Soz Karlis正如你发布的那样写作:D
答案 1 :(得分:0)
= link_to'download',@ sample.upload.path 这是最简单的方法))
答案 2 :(得分:0)
假设你正确设置了下载命名路由,你可以说
<%= link_to 'Download', download_sample_path(@sample) %>
答案 3 :(得分:0)
看起来你的路线不匹配。
这就是为什么,你必须:
阅读这篇文章,了解更多高级下载功能: http://thewebfellas.com/blog/2009/8/29/protecting-your-paperclip-downloads