module LHS::Item::Update
Public Instance Methods
partial_update(params, options = nil)
click to toggle source
# File lib/lhs/concerns/item/update.rb, line 23 def partial_update(params, options = nil) update(params, options, true) end
partial_update!(params, options = nil)
click to toggle source
# File lib/lhs/concerns/item/update.rb, line 27 def partial_update!(params, options = nil) update!(params, options, true) end
update(params, options = nil, partial_update = false)
click to toggle source
# File lib/lhs/concerns/item/update.rb, line 16 def update(params, options = nil, partial_update = false) update!(params, options, partial_update) rescue LHC::Error => e self.errors = LHS::Problems::Errors.new(e.response, record) false end
update!(params, options = {}, partial_update = false)
click to toggle source
# File lib/lhs/concerns/item/update.rb, line 31 def update!(params, options = {}, partial_update = false) options = options.present? ? options.dup : {} partial_record = _record.new(LHS::Data.new(params, _data.parent, _record)) _data.merge_raw!(partial_record._data) data = _data._raw.dup partial_data = partial_record._data._raw.dup url = url_for_persistance!(data, options) data_sent = partial_update ? partial_data.extract!(*data.keys) : data response_data = record.request( options.merge( method: options.fetch(:method, :post), url: url, body: data_sent ) ) _data.merge_raw!(response_data.unwrap(:item_created_key)) true end