How can I resize a Paperclip image after it has been added to the database?

paperclip, ruby-on-rails

Solution

If Paperclip is installed as a plugin, you can do this:

rake paperclip:refresh:thumbnails CLASS=Screenshot

where Screenshot is the name of the class with the attachment.

If it's installed as a gem, do this inside script/console:

Screenshot.all.each {|s| s.image.reprocess! }

replacing Screenshot with the appropriate class name

Problem

I've added 2000 pictures to my images table and I'm using the Paperclip plugin to create thumbs. I'm wondering if there's a way to go through the database and add another `:styles` element. For example, when I added the images I had the following in my model: ``` has_attached_file :image, :styles => { :medium => "300x300>", :thumb => "100x100>" } ``` However, now I want to add a `:large` attribute and have it applied to every image that's already in my table. Something like: ``` has_attached_file :image, :styles => { :large => "800x800>", :medium => "300x300>", :thumb => "100x100>" } ``` Is this possible? Or would I have to re-add all 2000 pictures?

Original source