in elasticsearch-model/lib/elasticsearch/model/indexing.rb [321:345]
def self.included(base)
base.before_save do |obj|
if obj.respond_to?(:changes_to_save)
changes_to_save = obj.changes_to_save
elsif obj.respond_to?(:changes)
changes_to_save = obj.changes
end
if changes_to_save
attrs = obj.instance_variable_get(:@__changed_model_attributes) || {}
latest_changes = changes_to_save.inject({}) { |latest_changes, (k,v)| latest_changes.merge!(k => v.last) }
obj.instance_variable_set(:@__changed_model_attributes, attrs.merge(latest_changes))
end
end if base.respond_to?(:before_save)
end