2012-04-12 78 views
4

在我的模型,我有:如何使用蜻蜓before_save調整圖像大小?

attr_accessible :photo 
image_accessor :photo 
before_save :resize_image 

def resize_image 
    self.photo = self.photo.process(:resize, '40x40') 
end 

但保存後,從記錄中刪除我的photo_uid數據庫(或犯規寫photo_uid在所有)

回答

6

呵呵,我發現:

image_accessor :photo do 
    after_assign :resize_image 
end 

def resize_image 
    photo.process!(:resize, '1000x650>') 
end 
+0

什麼關於規格?在添加上面的代碼後我運行rspecs時出現以下錯誤:'用#註冊的函數都不能處理方法調用resize(,」200x50「)。您可能需要註冊一個可以.' – Rads 2014-06-11 15:07:29

+0

在更高版本的蜻蜓'image_accessor'已更改爲'dragonfly_accessor'和':resize'處理爲':thumb'。 – peresleguine 2017-02-03 18:37:22