2016-12-08 9 views
0

これに関する良いドキュメントは見つかりませんでした。私はCarrierWaveによって行われるアップロードがどこに行くのだろうか?私の理解から、それはデータベースに直接行くのですよね?アセットパイプラインにファイルを保存する(またはファイルの参照のように作成する)ように強制できますか?今日はアセットパイプラインからアセットだけを取得しているので、image_tagを使用できないときに問題が発生しました。ユーザーがアセットパイプラインにファイルを保存すると、潜在的に非常に危険で有害な可能性がありますか?Rails、CarrierWaveはどこにファイルを保存しますか?

だから私の質問は:

  • 私は資産のパイプラインで/参照ファイルを保存することができますか?

  • いいアイデアでしょうか?

ありがとうございます!

答えて

1

あなたのアップローダーを見ればあなたはメソッドがstore_dirデフォルトと呼ばれる表示されますが、このようになります...フィールドに「oranges.jpg」という名前の添付ファイルのためにそう

def store_dir 
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" 
end 

は中imageと呼ばれますモデルはあなたが別のディレクトリに画像を保存するためにstore_dirを変更したり、AWSのようなクラウドサービスにアップロードすることができます

public/uploads/film_review/image/45/oranges.jpg 

...それは中に保存されているID 45とレコードにFilmReviewと呼ばれます。 ..どのように行うかの例については、鉄道庁その他の資料を参照してください。

+0

非常に良い。今、それは私にもっと明らかになった。どうもありがとう! –

関連する問題