Я новичок в RoR. Я использую Rails 5 и aws-sdk gem.доступ к ковшу aws-sdk Rails 5
Это второй webapp, который я пытаюсь построить, так голый со мной, если вы найдете большую бессмыслицу в моем коде ... Я следую учебнику, сделанному еще в 2011 году, поэтому он указывает направления, используя gem aws/s3. Я изо всех сил, чтобы найти четкие указания по использованию AWS-SDK, так вот мой вопрос:
Я пытаюсь получить доступ к Ковш, и я продолжаю нарваться ошибки:
undefined method `find' for Aws::S3::Bucket:Class
Относительно:
@songs = Aws::S3::Bucket.find(Musicapp::Application::S3_BUCKET).objects
CONFIG> APPLICATION.RB
require 'aws-sdk'
module Musicapp
class Application < Rails::Application
Aws.config.update({
region: 'eu-central-1',
credentials: Aws::Credentials.new('abc', 'xyz')
})
s3 = Aws::S3::Resource.new(region: 'eu-central-1')
S3_BUCKET = s3.bucket(ENV['S3_BUCKET'])
end
end
CONFIG> APPLICATION.YML
development:
AWS_ACCESS_KEY_ID: 'abc'
AWS_SECRET_ACCESS_KEY: 'xyz'
S3_BUCKET: 'mp3playlist'
КОНТРОЛЛЕРЫ> SONGS_CONTROLLER.RB
class SongsController < ApplicationController
def index
@songs = Aws::S3::Bucket.find(Musicapp::Application::S3_BUCKET).objects
end
Gemfile
gem 'aws-sdk'
благодарит Дэвид за ответ, но это повышение другой ошибки: неопределенных метод 'объектов для ноля: NilClass вы имели в виду? object_id – catch22