Railsアプリの本番環境における画像データの置き場所

こんにちは!kossyです!




さて、今回は、Railsでアプリケーションを開発する際の、
本番環境における画像データの置き場所はどこがいいのか、について、
ブログに残してみたいと思います。




ロゴや固定のアイコンはassetへ、ユーザーがアップロードする画像はpublicへ

結論は上記になります。

なぜ、配置する場所を変えるのかと言うと、asset_precompileの対象の範囲にpublicが含まれないからです。

ログや固定のアイコンと言うのは、システム側に依存するものなので、precompileの対象にさせるために、
assets配下に置きます。

対して、ユーザーがアップロードするような画像は、precompileの対象に含む必要はないので、
public配下に置かれるようにします。



asset precompileの説明はこちらのブログが詳しかったです。
Rails初学者がつまずきやすい「アセットパイプライン」



参考にさせていただいたサイト

Ruby on Rails - Railsで扱う画像はassetsとpublic、どちらに置くといいのでしょうか?|teratail