0
私はRoRを初めて使いました。私はRails 5とaws-sdk gemを使用しています。バケットにアクセスするaws-sdk Rails 5
これは私が構築しようとしている2番目のwebappです。私のコードで大きなナンセンスを見つけたら、私と一緒に裸にしてください...私は2011年に作られたチュートリアルに従っているので、/s3。
undefined method `find' for Aws::S3::Bucket:Class
:
@songs = Aws::S3::Bucket.find(Musicapp::Application::S3_BUCKET).objects
私はバケツにアクセスしようとしていると私はエラーに実行し続ける
:私はここで私の質問です、AWS-SDKを使用しての明確な方向性を見つけるのに苦労します
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
012それはMusicappかのように見えますの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'
おかげでデビッド、それはまた別のエラーを上げています:nilのための 未定義のメソッド 'オブジェクトを:NilClassはもしかして? object_id – catch22