module Mobility::Plugins::ActiveModel::Dirty::BackendMethods

Public Instance Methods

write(locale, value, **options) click to toggle source

@!group Backend Accessors @!macro backend_writer @param [Hash] options

Calls superclass method
# File lib/mobility/plugins/active_model/dirty.rb, line 339
def write(locale, value, **options)
  locale_accessor = Mobility.normalize_locale_accessor(attribute, locale)
  if model.changed_attributes.has_key?(locale_accessor) && model.changed_attributes[locale_accessor] == value
    mutations_from_mobility.restore_attribute!(locale_accessor)
  elsif read(locale, **options.merge(locale: true)) != value
    mutations_from_mobility.attribute_will_change!(locale_accessor)
  end
  super
end

Private Instance Methods

mutations_from_mobility() click to toggle source

@!endgroup

# File lib/mobility/plugins/active_model/dirty.rb, line 352
def mutations_from_mobility
  model.send(:mutations_from_mobility)
end