0

現在、テスターがペーパークリップを使用してプロファイルの画像をアップロードしているステージング環境 (heroku) でテストしています。ただし、heroku に git push してサイトを更新するたびに (db を変更しない)、それらの写真が消えます。なぜこれが起こっているのか、どうすればこれを回避できるのか誰か知っていますか?

ペーパークリップの構成は次のとおりです。

 has_attached_file :photo, :styles => {:thumb => "115x100#", :medium => "345x300#", :large => "690x600#"},
                        :path => ":rails_root/public/system/:attachment/:id/:style/:filename",
                        :url => "/system/:attachment/:id/:style/:filename"

production.rb 構成:

config.serve_static_assets = true
config.assets.compile = false

ありがとう。

4

1 に答える 1

1

そのようにherokuのファイルシステムを使用しないでください。S3 またはその他の耐久性のあるストレージ メディアを使用することを想定しています。Heroku は、そのファイルシステムをEphemeral filesystemと呼んでいます。アプリケーションはそれに書き込むことができますが、書き込みは他のプロセスには見えず、dyno が再起動するとすべての変更が失われます。

Paperclip は S3 を適切にサポートしています。彼らのドキュメントを見てください。

于 2012-10-30T03:48:58.700 に答える