неопределенный метод find для AWS :: S3 :: Bucket: Class

Я работаю над внедрением загрузчика Amazon S3 для моего проекта rails.

Я пытаюсь получить доступ к корзине, чтобы я мог назначить все изображения переменной и перечислить их.

Я продолжаю получать следующую ошибку, когда я пытаюсь просмотреть мое новое действие в моем контроллере загрузки:

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"
 Ryan Bigg05 июн. 2012 г., 07:13
Вы уверены, что это драгоценный камень, который вы используете? Можете ли вы показать нам свой Gemfile?
 Huy21 окт. 2016 г., 17:26
@ JenLij & # xF3; это было несколько лет назад. Я не помню.
 Huy05 июн. 2012 г., 07:34
@RyanBigg Добавлен Gemfile по вашему запросу. Выглядит как правильный камень.
 catch2221 окт. 2016 г., 10:31
Привет @ Привет, я получаю ту же ошибку при попытке получить доступ к Bucket. Я на Rails 5 и aws-sdk. неопределенный метод `find & apos; для Aws :: S3 :: Bucket: Класс // @songs = Aws :: S3 :: Bucket.find (Musicapp :: Application :: BUCKET) .objects. Вы использовали aws-sdk или aws-s3?

Ответы на вопрос(2)

Работает здесь Что произойдет, если вы зайдете в консоль и выполните:

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

? Я использую aws-s3 0.6.3. Если такого способа до сих пор нет, то, возможно, виновником является aws-sdk? Я никогда не использовал это раньше.

Решение Вопроса

Вы не можете использовать вместе aws-s3 и aws-sdk, так как они будут конфликтовать друг с другом.

 Huy05 июн. 2012 г., 19:34
Спасибо Берлингтон.

Ваш ответ на вопрос