Sha256: 1866713f28ee896f894622411399fac774a73f68dae772c1170dfcbb1f2f45b9
Contents?: true
Size: 680 Bytes
Versions: 6
Compression:
Stored size: 680 Bytes
Contents
module ActsAsScrubbable module Scrub def scrubbed_values return unless self.class.scrubbable? run_callbacks(:scrub) do _updates = {} scrubbable_fields.each do |_field, value| unless self.respond_to?(_field) raise ArgumentError, "#{self.class} do not respond to #{_field}" end next if self.send(_field).blank? if ActsAsScrubbable.scrub_map.keys.include?(value) _updates[_field] = ActsAsScrubbable.scrub_map[value].call else puts "Undefined scrub: #{value} for #{self.class}#{_field}" end end _updates end end end end
Version data entries
6 entries across 6 versions & 1 rubygems