15

アプリケーションを実行しようとすると、次のエラーが発生します。

config / initializers /carrierwave.rb:4:CarrierWave :: Uploader :: Base:Classの未定義のメソッド `fog_host ='(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

私は持っcarrierwavefogいて、私の中に含めました、Gemfileそしてそれは最後の使用まで働いていましたbundle update。私のコードで何が間違っているのか分かりますか?私はグーグルでそれについて何も見つけることができません

ルビーv。1.8.7
レールv。3.2.6
フォグ
v。1.6.0キャリアウェーブv。0.7.0

4

1 に答える 1

40

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

于 2012-10-24T00:54:48.003 に答える