未定义的方法`发现”的AWS :: S3 ::斗:类(undefined method `find&

2019-06-25 08:46发布

我正在实施一个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

查找方法是记录在这里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"

Answer 1:

不能使用AWS-S3和AWS-SDK在一起,因为它们会相互冲突。



Answer 2:

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

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

? 我使用AWS-S3 0.6.3。 如果还是有没有这样的方法,那么也许AWS-SDK是罪魁祸首? 我从来没有使用过它。



文章来源: undefined method `find' for AWS::S3::Bucket:Class