2012-04-12 2 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 после добавления вышеуказанного кода: 'Ни одна из функций, зарегистрированных в # , не имела возможности справиться с изменением размера вызова метода ( Rads

+0

В более поздних версиях dragonfly 'image_accessor' был изменен на' dragonfly_accessor' и ': resize' процесс на': thumb'. – peresleguine