module Mobility::Plugins::Sequel::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/sequel/dirty.rb, line 54
def write(locale, value, **options)
  locale_accessor = Mobility.normalize_locale_accessor(attribute, locale).to_sym
  if model.column_changes.has_key?(locale_accessor) && model.initial_values[locale_accessor] == value
    super
    [model.changed_columns, model.initial_values].each { |h| h.delete(locale_accessor) }
  elsif read(locale, **options.merge(fallback: false)) != value
    model.will_change_column(locale_accessor)
    super
  end
end