NameError(未初始化常量Aws::VERSION):
NameError (uninitialized constant Aws::VERSION):
我正在 RAILS 5
中将回形针与 S3 存储桶集成。我指的是 https://coderwall.com/p/vv1iwg/set-up-ruby-on-rails-with-paperclip-5-and-s3-using-aws-sdk-v2。
我在 development.rb 中写了以下内容:
config.paperclip_defaults = {
storage: :s3,
s3_region: 'us-west-2',
s3_credentials: {
bucket: 'mybucket',
access_key_id: 'my id',
secret_access_key: 'my secret key'
}
}
上传图片时出现以下错误:
NameError (uninitialized constant Aws::VERSION):
我正在使用 gem aws-sdk
的 3.0.1 版
这是我对 CarrierWave
和 minimagick
的配置,我认为可以为您的情况做类似的事情:
config/initializers/carrier_wave.rb
CarrierWave.configure do |config|
config.fog_credentials = {
provider: 'AWS',
aws_access_key_id: ENV['S3_ACCESS_KEY'],
aws_secret_access_key: ENV['S3_SECRET_KEY'],
region: ENV['S3_REGION']
}
config.fog_directory = ENV['S3_BUCKET']
end
我已将 aws-sdk 版本降级为 aws-sdk (2.10.42)
,并且可以正常工作。
您可以引入当前版本中缺少的变量,而不是降级。添加此文件适用于 aws-sdk 3.0.1 和 paperclip 5.1.0,并且可能会一直有效,直到更新 paperclip 以适应 aws 更改。
# config/initializers/aws.rb
Aws::VERSION = Gem.loaded_specs["aws-sdk"].version
我正在 RAILS 5
中将回形针与 S3 存储桶集成。我指的是 https://coderwall.com/p/vv1iwg/set-up-ruby-on-rails-with-paperclip-5-and-s3-using-aws-sdk-v2。
我在 development.rb 中写了以下内容:
config.paperclip_defaults = {
storage: :s3,
s3_region: 'us-west-2',
s3_credentials: {
bucket: 'mybucket',
access_key_id: 'my id',
secret_access_key: 'my secret key'
}
}
上传图片时出现以下错误:
NameError (uninitialized constant Aws::VERSION):
我正在使用 gem aws-sdk
这是我对 CarrierWave
和 minimagick
的配置,我认为可以为您的情况做类似的事情:
config/initializers/carrier_wave.rb
CarrierWave.configure do |config|
config.fog_credentials = {
provider: 'AWS',
aws_access_key_id: ENV['S3_ACCESS_KEY'],
aws_secret_access_key: ENV['S3_SECRET_KEY'],
region: ENV['S3_REGION']
}
config.fog_directory = ENV['S3_BUCKET']
end
我已将 aws-sdk 版本降级为 aws-sdk (2.10.42)
,并且可以正常工作。
您可以引入当前版本中缺少的变量,而不是降级。添加此文件适用于 aws-sdk 3.0.1 和 paperclip 5.1.0,并且可能会一直有效,直到更新 paperclip 以适应 aws 更改。
# config/initializers/aws.rb
Aws::VERSION = Gem.loaded_specs["aws-sdk"].version