我浏览了不同的帖子,但没有得到任何帮助,我正试图将我的图像上传到亚马逊S3我仔细检查了我的asw凭据,它们都是正确的,以下是所需的文件,请帮助
Gemfile
gem 'aws-sdk', '< 2.0'
gem 'devise'
gem "paperclip", "~> 5.0.0.beta1"
gem 'bootstrap-sass', '~> 3.3.6'
gem 'bootstrap-material-design'
gem 'nested_scaffold'
config/environments/development.rb
# Raises error for missing translations
# config.action_view.raise_on_missing_translations = true
config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
config.action_mailer.delivery_method = :smtp
config.paperclip_defaults = {
storage: :s3,
s3_credentials: {
bucket: "bucketName",
access_key_id: "xoxoxo",
secret_access_key: "secret_key"
}
}
config/initializers/paperclip.rb
# config/initializers/paperclip.rb
Paperclip::Attachment.default_options[:url] = ':s3_domain_url'
Paperclip::Attachment.default_options[:path] = '/:class/:attachment/:id_partition/:style/:filename'
Paperclip::Attachment.default_options[:s3_host_name] = 's3-us-west-2.amazonaws.com'
上传时我仍然收到错误
CorporateTrainersController#create中的名称错误未初始化的常量Paperclip::Storage::S3::Aws
Extracted source (around line #29):
# POST /corporate_trainers.json
def create
@corporate_trainer = CorporateTrainer.new(corporate_trainer_params)
respond_to do |format|
if @corporate_trainer.save
只需删除您的gemfile版本。也许对你有帮助。
gem "paperclip",'4.3.6' #last stable version
gem 'aws-sdk', '< 2.0'
than bundle install