module Mongoid::SyncWithDeserialization

Public Instance Methods

deserialization_before_sync() click to toggle source
# File lib/mongoid_sync_with_deserialization.rb, line 14
def deserialization_before_sync
  Utils.load_parsers self.class

  self.class.deserialization_parsers.each do |_field, _field_parser|
    _v = self.read_attribute(_field)
    if _v.is_a?(String)
      _v = _field_parser.call(_v) rescue _v
      self.write_attribute(_field, _v)
    end
    Rails.logger.info "#{_field} : #{_field_parser} : #{_v}" if $IS_DEBUG_SyncWithDeserialization
  end
end