carrierwave

carrierwaveは、ファイルアップロード用のプラグインで、attachment_fuと同じようなやつ。

インストール

Gemfileに

を追加

carrierwave用のファイルをジェネレータで作成する

以上のコマンドを実行すると

app/uploaders/image_uploader.rb

ファイルが作成される

モデルの作成

出来上がったマイグレーションファイルのupに以下を追加

モデルの設定

画像の保存先をファイルシステムに設定

app/uploaders/image_uploader.rb

ファイルを開き、

を追加

アップロードしたファイルのサイズのバリエーションを設定

app/uploaders/image_uploader.rb

に以下の設定を追加

[50,50]は画像サイズ
:resize_to_fit は画像の縮小方法で、縦か横の長いほうを50pxにして、縦横比維持したまま縮小
:scaleにすれば、縦横50pxで縮小

thumbのURLを取得するには

とする