Как изменить размер изображения скрепки после того, как он был добавлен в базу данных?
Я добавил 2000 картинок в таблицу изображений, и я использую плагин Paperclip для создания больших пальцев. Мне интересно, есть ли способ пройти через базу данных и добавить еще один элемент :styles
.
Например, когда я добавил изображения, у меня было следующее в моей модели:
has_attached_file :image, :styles => { :medium => "300x300>", :thumb => "100x100>" }
Однако теперь я хочу добавить атрибут :large
и применить его к каждому изображению, которое уже находится в моей таблице. Что-то вроде:
has_attached_file :image, :styles => { :large => "800x800>", :medium => "300x300>", :thumb => "100x100>" }
Возможно ли это? Или мне придется повторно добавить все 2000 снимков?
Ответы
Ответ 1
Если Paperclip установлен как плагин, вы можете сделать это:
rake paperclip:refresh:thumbnails CLASS=Screenshot
где Скриншот - это имя класса с вложением.
Если он установлен как драгоценный камень, сделайте это внутри script/console:
Screenshot.all.each {|s| s.image.reprocess! }
замена скриншота на соответствующее имя класса
Ответ 2
rake paperclip:refresh:thumbnails