2

Carrierwave の Ryan Bates の RailsCast を複数のファイル アップローダに拡張しており、それぞれが独自の S3 バケットにアップロードする必要があります。私はすでに1つ働いています。私の構成は次のようになります。

CarrierWave.configure do |config|
  config.fog_credentials = {
    :provider               => 'AWS',
    :aws_access_key_id      => '(my access key)',
    :aws_secret_access_key  => '(my secret key)'
  }
  config.fog_directory  = 'my-bucket'
  config.fog_attributes = {'Cache-Control'=>'max-age=315576000'}
end

そして、私のファイル アップローダ クラスは次のようになります。

class ImageUploader < CarrierWave::Uploader::Base
  include CarrierWave::RMagick
  process :resize_to_fit => [1024, 1024]
  process :quality => 70
  storage :fog
end

私のクラスでは、私は電話します

mount_uploader :image, ImageUploader

アップロードごとに config.fog_directory を変更することは可能ですか? クラス定義の中?何処か別の場所?助けてくれてありがとう。

4

1 に答える 1

6

アップローダ内:

def fog_directory
  'custom-bucket'
end

これが可能なオプションの完全なリストについては、こちらを参照してください。ほぼ全員です。

于 2013-11-07T17:02:48.620 に答える