AWS的未定义方法`find’:: S3 :: Bucket:Class

我正在为rails项目实现Amazon S3上传器。

我正在尝试访问一个桶,以便我可以将所有图像分配给变量并列出它们。

当我尝试在上传控制器中查看我的新操作时,我不断收到以下错误:

undefined method `find' for AWS::S3::Bucket:Class 

这是我的uploads_controller.rb

 class UploadsController < ApplicationController require 'aws/s3' def new photo_bucket = AWS::S3::Bucket.find('photos') @photos = photo_bucket.objects end end 

find方法记录在http://amazon.rubyforge.org/ 。

关于这里发生了什么的任何线索?

谢谢。

这是我的Gemfile:

 gem 'paperclip' gem 'aws-s3' gem 'aws-sdk' gem 'rails', '3.2.0' gem 'bcrypt-ruby', '3.0.1' gem 'nokogiri' gem 'kaminari' gem 'acts-as-taggable-on', '~> 2.2.2' gem 'omniauth-twitter' gem 'omniauth-facebook' gem "friendly_id", "~> 4.0.1" 

你不能一起使用aws-s3和aws-sdk,因为它们会相互冲突。

在这里工作。 如果你去控制台做什么会发生什么:

 require 'aws/s3' AWS::S3::Bucket.methods.find_all{|m| m=~/find/ } 

? 我正在使用aws-s3 0.6.3。 如果还没有这样的方法,那么也许aws-sdk是罪魁祸首? 我之前从未使用过它。