undefined方法`fog_host =’
当我试图运行我的应用程序时,我收到以下错误:
config / initializers / carrierwave.rb:4:未定义的方法`fog_host =’用于CarrierWave :: Uploader :: Base:Class(NoMethodError)
这是我的initializers / carrierwave.rb文件:
CarrierWave.configure do |config| config.storage = :fog config.fog_directory = 'media.domain.pl' config.fog_host = 'http://s3-eu-west-1.amazonaws.com/media.domain.pl' config.fog_credentials = { :provider => 'AWS', :aws_access_key_id => '***', :aws_secret_access_key => '***', :region => 'eu-west-1', } end
我的Gemfile
包含了carrierwave
和fog
,它一直工作到最后一次使用bundle update
。 你知道我的代码有什么问题吗? 我在谷歌找不到任何关于它的东西
ruby诉1.8.7
rails v.3.2.6
雾v 1.6.0
carrierwave v.7.0.0
fog_host
似乎不是配置选项。 从Carrier wave文档中看起来您可能需要asset_host
:
CarrierWave.configure do |config| config.fog_credentials = { :provider => 'AWS', # required :aws_access_key_id => 'xxx', # required :aws_secret_access_key => 'yyy', # required :region => 'eu-west-1' # optional, defaults to 'us-east-1' } config.fog_directory = 'name_of_directory' # required config.fog_public = false # optional, defaults to true config.fog_attributes = {'Cache-Control'=>'max-age=315576000'} # optional, defaults to {} config.asset_host = 'https://assets.example.com' # optional, defaults to nil end
更新:
这是引入该更改的提交: https : //github.com/jnicklas/carrierwave/commit/7046c93d6b23cffef9f171a5f7f0dd14267a7057