我正在尝试安装aws,以便可以使用它为我的rails应用程序存储图像。当我试图推到Heroku时,出现了以下错误:

ArgumentError:  is not a recognized provider

这是我的carrierwave.rb代码:
if Rails.env.production?
  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']
    }

    config.fog_credentials = ['S3_BUCKET']

  end
end

这是picture_uploader.rb文件中的代码
if Rails.env.production?
  storage :fog
else
  storage :file
end

最后这是我的heroku配置
DATABASE_URL:             postgres://<url>
LANG:                     en_US.UTF-8
RACK_ENV:                 production
RAILS_ENV:                production
RAILS_SERVE_STATIC_FILES: enabled
S3_ACCESS_KEY:            <access_key>
S3_BUCKET:                <bucket_name>
S3_SECRET_KEY:            <secret_key>
SECRET_KEY_BASE:          <key>

我漏掉了什么,但就是找不到。

最佳答案

我一发出去就发现了问题。在carrierWave.rb文件中输入错误。

关于ruby-on-rails - 上载到Heroku(AWS)时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33273831/

10-16 11:51