Module: ActiveRecord::Persistence
- Defined in:
- lib/initializers/initialize.rb
Overview
Active Record Persistence
Instance Method Summary
collapse
Instance Method Details
#update_attributes(attributes, options = {}) ⇒ Object
52
53
54
55
56
57
58
59
60
61
62
63
|
# File 'lib/initializers/initialize.rb', line 52
def update_attributes(attributes, options = {})
if timestamp_control = attributes.delete(:control_against_overwrite_by_another_user)
if self.attributes['updated_at'] > timestamp_control
errors[:base] << I18n.t('errors.messages.control_against_overwrite_by_another_user')
return false
end
end
with_transaction_returning_status do
self.assign_attributes(attributes, options)
save
end
end
|
#update_attributes!(attributes, options = {}) ⇒ Object
65
66
67
68
69
70
71
72
73
74
75
76
|
# File 'lib/initializers/initialize.rb', line 65
def update_attributes!(attributes, options = {})
if timestamp_control = attributes.delete(:control_against_overwrite_by_another_user)
if self.attributes['updated_at'] > timestamp_control
errors[:base] << I18n.t('errors.messages.control_against_overwrite_by_another_user')
return false
end
end
with_transaction_returning_status do
self.assign_attributes(attributes, options)
save!
end
end
|