module Elos::Repository::Adapter::Elos::Model::Persistable
Attributes
persisted[RW]
Public Instance Methods
create(attrs = {})
click to toggle source
# File lib/elos/repository/adapter/elos/model/persistable.rb, line 13 def create(attrs = {}) obj = new(attrs) obj.save obj end
create!(attrs = {})
click to toggle source
# File lib/elos/repository/adapter/elos/model/persistable.rb, line 19 def create!(attrs = {}) obj = new(attrs) obj.save! obj end
persisted?()
click to toggle source
# File lib/elos/repository/adapter/elos/model/persistable.rb, line 26 def persisted? persisted end
save()
click to toggle source
# File lib/elos/repository/adapter/elos/model/persistable.rb, line 30 def save _save end
save!()
click to toggle source
# File lib/elos/repository/adapter/elos/model/persistable.rb, line 34 def save! _save(raise_error: true) end
update(attrs = {})
click to toggle source
# File lib/elos/repository/adapter/elos/model/persistable.rb, line 38 def update(attrs = {}) assign_attributes(attrs) save end
update!(attrs = {})
click to toggle source
# File lib/elos/repository/adapter/elos/model/persistable.rb, line 43 def update!(attrs = {}) assign_attributes(attrs) save! end
Private Instance Methods
_save(raise_error: false, callback: true)
click to toggle source
# File lib/elos/repository/adapter/elos/model/persistable.rb, line 50 def _save(raise_error: false, callback: true) return false unless raise_error ? validate! : valid? optionally_run_callbacks(:save, callback: callback) do if persisted? optionally_run_callbacks(:update, callback: callback) do _save_core end else optionally_run_callbacks(:create, callback: callback) do _save_core self.persisted = true end end end true end
_save_core()
click to toggle source
# File lib/elos/repository/adapter/elos/model/persistable.rb, line 75 def _save_core r = reindex self.id ||= r end
optionally_run_callbacks(method, callback: true, &block)
click to toggle source
# File lib/elos/repository/adapter/elos/model/persistable.rb, line 67 def optionally_run_callbacks(method, callback: true, &block) if callback run_callbacks(method, &block) else block.() end end