Railsでmodelから取り出したオブジェクトに前処理を行いたいです。
例えば画像が格納されているImageモデルから画像を10件取り出し、
widthというプロパティを200に整えたいと思い、controllerとモデルに以下記載をしました。
controller
1def index 2 @images = Image.limit(10) 3 4 # @imagesの中身のwidthはバラバラだが、200に揃える 5 @images = @images.width(200) 6end
model
1def width(w) 2 self.each do |img| 3 scale = BIJO_IMAGE_WIDTH / img['width'] 4 img['width'] *= scale 5 img['height'] *= scale 6 end 7end
これを実行すると、以下エラーになります。
undefined method `width' for #Image::ActiveRecord_Relation:0x00007fe8ed393f18
どう記述すれば良いものでしょうか。
ご指南いただけると嬉しいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/09 05:33