3

我正在为我的 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"
4

2 回答 2

3

您不能同时使用 aws-s3 和 aws-sdk,因为它们会相互冲突。

于 2012-06-05T11:19:31.817 回答
0

在这里工作。如果您转到控制台并执行以下操作会发生什么:

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

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

于 2012-06-05T06:00:50.013 回答