微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – 无法在Rails 3中使用send_file函数读取文件

我正在使用的代码

在视图文件中:

<%= link_to "Download",download_image_path(image) %>

在控制器中:

def download
  @image = Image.find(params[:id])
  send_file "#{RAILS_ROOT}/public"  + @image.attachment.url
end

我收到一个错误

Cannot read file /Users/mohit/projects/my_app/public/system/attachments/4/original/Screen Shot 2011-11-04 at 3.14.03 PM.png?1320582022

PS:双重检查,文件存在.服务器上的相同问题,适用于所有相应控制器中的所有文件(图像,pdf,视频).

解决方法

问题是:

我在用

@image = Image.find(params[:id])
 send_file "#{RAILS_ROOT}/public"  + @image.attachment.url

它应该是

@image = Image.find(params[:id])
 send_file  @image.attachment.path

PS:确保验证图像/记录是否存在.

原文地址:https://www.jb51.cc/ruby/267634.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐