railsで画像をアップロードしようとしたらundefined method `resize_to_limit’とエラーが出てきた場合

エラー Ruby、Ruby on Rails

エラー

railsで画像のアップロード機能を作っているのですが、実際に画像をアップロードしたら

undefined method resize_to_limit'

というエラーが返ってきました。

 

その場合の対応策。

スポンサーリンク

前提の条件

1:ImageMagickをインストールしている

で、画像の加工を行うためのライブラリImageMagickをインストールしています。

 

2:CarrierWaveとmini_magickをインストールしている

Gemfileに以下を記述

carrierwaveは画像をアップロードするためのgem。

mini_magickは画像ファイルのサイズを変更するために使用するgem。

 

で、インストール。

3:アップローダーを作成

今回は、Imageという名前で作成。

4:作成したアップローダーに追記する

画像サイズの調整を行いたかったので、以下の追記。

なんか、=>がうまく表示されない。

 

数値を変えることで、アップロードした際の大きさを調整可能。

 

5:モデルにアップローダーを紐づける

今回は、Userモデルに紐づけたいので、app/models/user.rbに以下を記述。

Userモデルのiconカラムに紐づけています。

対応策

undefined method resize_to_limit’

ということは、画像サイズ調整の一文がいかんのでしょうが、しかし画像の調整は行いたい。

 

というか以前は出来ていた。

というわけで、以前作成したやつと何が違うのかを確認したところ、今回作成したアップローダーには以下の一文が抜けていました。

これがコメントアウトされているので、コメントアウトを外す。

 

するとエラーが解消されました。

 

以前は特にこの辺をいじった記憶がないのですが・・・

ただ忘れているだけかな?

コメント

タイトルとURLをコピーしました