## model

class Asset < ActiveRecord::Base

has_attachment :storage => :file_system,
:thumbnails => { :polaroid => '193x193', :fullscreen => '800>', :large => "300>", :thumb => '120>', :tiny => '50>' },
:max_size => 5.megabytes,
:path_prefix => "public/image_assets"
validates_as_attachment

def regenerate_thumbnail
ActiveRecord::Base.record_timestamps = false
begin
self.temp_data = temp_data
save!
ensure
ActiveRecord::Base.record_timestamps = true
end
end

end

## migration

class RegenerateThumbs < ActiveRecord::Migration
def self.up
Asset.find(:all, :conditions => 'parent_id is null').each &:regenerate_thumbnail
end

def self.down
# poo
end
end