class CarrierWave::FuzzyStorage::ActiveRecordSupport
Public Class Methods
new(default_storage, *mounted_fields)
click to toggle source
# File lib/carrierwave/fuzzy_storage/active_record_support.rb, line 6 def initialize(default_storage, *mounted_fields) @default_storage = default_storage @mounted_fields = mounted_fields.flatten.map(&:to_sym) end
Public Instance Methods
included(base)
click to toggle source
Calls superclass method
# File lib/carrierwave/fuzzy_storage/active_record_support.rb, line 11 def included(base) storage = @default_storage mounted_fields = @mounted_fields mounted_fields.each do |field| base.send(:define_method, "#{field}_storage") do super() || storage end end base.before_create do mounted_fields.each do |field| public_send("#{field}_storage=", storage) end end end