【发布时间】:2008-12-16 21:30:19
【问题描述】:
我已将一些文件上传到 public 下的目录,并尝试使用 Dir.glob 访问它们。但我没有得到任何结果。
Dir.glob 在开发服务器 (mongrel) 上运行良好,并且在安装在 site5 上的站点上使用脚本/控制台时也运行良好
有没有办法让这个工作或不同的方式来获取文件列表?
【问题讨论】:
标签: ruby-on-rails ruby
我已将一些文件上传到 public 下的目录,并尝试使用 Dir.glob 访问它们。但我没有得到任何结果。
Dir.glob 在开发服务器 (mongrel) 上运行良好,并且在安装在 site5 上的站点上使用脚本/控制台时也运行良好
有没有办法让这个工作或不同的方式来获取文件列表?
【问题讨论】:
标签: ruby-on-rails ruby
我的猜测是 site5 禁止执行 shell 或者您无权访问 /bin/sh。通配符一般是通过运行一个shell来实现的……试试
Dir.entries("public").each do |f|
puts(f)
end
【讨论】:
原来允许使用 glob,但在 mongrel 上我需要在路径前加上 public,而在 site5 托管的网站上我需要跳过它。
在杂种中有效:
Dir.glob('public/files/images/*.jpg')
在站点 5 中有效:
Dir.glob('files/images/*.jpg')
Olliviers 的回答让我走上了正轨。
【讨论】: