2017-04-10 11 views
1

私はRails 4.2.6とCarrierWave 1.0.0を使用しています。私はアップローダーのセットアップそうのように持っている:開発でCarrierWaveファイルが生産中に保存されない

class LetterUploader < CarrierWave::Uploader::Base 
    storage :file 
    def store_dir 
     "#{Rails.root}/public/uploads/#{model.id}" 
    end 
end 

、ファイルは、/公共/アップロードは/ etc ...が、生産で、それは保存していないで、うまく保存されます。キャッシュされていますが、/ tmpディレクトリにファイルがありますが、実際には保存されていません。私はすべての解決策を見てきましたが、私はそれを見つけることができません。私の直感は、プロダクションサーバーのフォルダのアクセス許可の問題でしたが、パブリックフォルダが再帰的に自分のユーザー名に属していて、それが役に立たないことを確認しました。私は777へのパーミッションを設定しても無駄です。私はより多くの情報(コントローラ上、または何か他のもの)を要求に応じて提供することができます。

+0

'log/production.log'ファイルには何も表示されていませんか?また、 'uploads'フォルダは公開されていますか? – nzajt

+0

フォルダは公開されています。私は手紙をapiに渡すヘルパーメソッドを持っています。プロダクションログに表示される内容は、実際にファイルを渡されていないため(ファイルが保存されていないため)、ファイルを渡しているというAPIからエラーが発生していることです。 – DudeMontag

答えて

1

問題はCarrierWaveではなく、添付ファイルが保存されるまでアップロードされたファイルが保存されないという問題がありました。モデルを保存し、ファイルを別のAPIに送信してから元のモデルを更新するように再調整しました。

関連する問題