0

私はモデル1とモデル2を持っています。2 つのモデルの画像を 2 つの異なるディレクトリにアップロードする必要があります。今のところ、私の image_uploader は次のとおりです。

class ImageUploader < CarrierWave::Uploader::Base

  include CarrierWave::RMagick

  storage :file

  def store_dir
    "uploads/images"
  end
end

model2 の画像は uploads/images2 に保存する必要があります。これをどのように定義できますか?

4

2 に答える 2

0

アップローダー間の違いが store_dir 関数だけである場合は、別のアップローダーを作成する必要はありません (可能ですが)。アップローダ内でモデルにアクセスできるため、次のようなことができます。

def store_dir
    if model.class==Model1
        "upload/images1"
    elsif model.class==Model2
        "upload/images2"
    else
        "upload/images"
    end
end
于 2013-03-04T23:42:44.097 に答える
0

申し訳ありませんが、質問はあまり知的ではありませんでした。答えは、2番目のアップローダーを作成することのようです

レールGアップローダモデル2

于 2013-03-04T10:38:53.350 に答える