-
Notifications
You must be signed in to change notification settings - Fork 1.7k
How to: use callbacks
Bragadeesh edited this page Jun 2, 2020
·
6 revisions
Callbacks allow you to hook in your own code when a particular CarrierWave event occurs. The following callbacks are available for use in CarrierWave uploaders:
- :cache
- :retrieve_from_cache
- :store
- :retrieve_from_store
- :remove
class MyUploader < CarrierWave::Uploader::Base
#....
after :cache, :unlink_original
def unlink_original(file)
return unless delete_original_file
File.delete if version_name.blank?
end
end
When you have multiple versions of files(images) to be processed and just want the callback to be triggered for a particular version then you can simply use the callback within the versions.
class MyUploader < CarrierWave::Uploader::Base
#....
version :thumb50 do
process :resize_to_fit => [50, 50]
end
version :thumb100 do
process :resize_to_fit => [100, 100]
after :store, :callback_method
end
def callback_method file
puts self.version_name
end
end