ruby on rails AWS-S3列表中的文件

时间:2012-07-27 11:41:01

标签: ruby-on-rails-3

我有一个选择框,我希望用客户端S3存储桶填充文件名。 在我的控制器中,我将变量设置为:

@files = AWS::S3::Bucket.find("clientsbucket").objects

在视图中以options_for_select(@files)方式调用时会显示对象列表,但格式为<AWS::S3::Object:0x4f9e5b8><AWS::S3::Object:0x4f9e5a0>

对于我的生活,我无法弄清楚如何列出文件名而不是这个对象信息?

非常感谢任何帮助

1 个答案:

答案 0 :(得分:0)

好吧,访问视图中每个对象的key属性! key属性是存储桶中文件的完整路径。

objects.each do |object|
  = object.key

即使AWS SDK文档没有提供信息,也可以尝试一下。 在对象上使用as_tree方法,以便获得所需的特定数据。

http://docs.amazonwebservices.com/AWSRubySDK/latest/AWS/S3/Tree.html

祝你好运!!