233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
|
# File 'lib/fera/models/base.rb', line 233
def save( = {}, raise: false)
run_callbacks :save do
if new?
create(, raise: raise) else
changed_attributes = attributes.filter { |key, value| !@clean_copy.attributes.key?(key) || (@clean_copy.attributes[key] != value) || (key == self.class.primary_key) }
changed_attributes.reject! { |k| k == 'id' }
return false unless changed_attributes.keys.any?
update(changed_attributes, , raise: raise)
end
@clean_copy = clone_with_nil
self
end
end
|