Rails无法访问上传的文件

时间:2012-08-02 21:07:10

标签: ruby-on-rails ruby file upload

我在网上搜了几个小时试图做这项工作,我没有运气。

我上传文件并尝试将其写入public / uploads目录(已存在)

name = archivo.original_filename
directory = "public/uploads"
path = File.join(directory, name)
Dir.mkdir(directory) unless File.directory?(directory)
File.open(path, "wb") { |f| f.write(archivo.read) }

我得到了例外

No such file or directory - public/uploads/SERVITEST.xls

我尝试使用绝对路径并从/ tmp目录中读取文件但没有运气,我得到了这个例外:

Permission denied - oo_7598_6341257208

我真的不知道发生了什么,因为在每个文件上传示例中我都看到控制器可以看到公共目录

提前致谢

问候

解决方案:

经过一夜安眠和几杯咖啡后,我解决了“没有这样的文件或目录”的问题:

directory = Rails.root.join("public","uploads");

“权限被拒绝”问题是roo gem的问题,因为它试图访问未定义的ROO_TMP环境变量:

export ROO_TMP=/tmp

感谢大家的帮助:D

0 个答案:

没有答案