Module: LHS::Item::Save

Extended by:
ActiveSupport::Concern
Included in:
LHS::Item
Defined in:
lib/lhs/concerns/item/save.rb

Instance Method Summary collapse

Instance Method Details

#saveObject



9
10
11
12
13
14
# File 'lib/lhs/concerns/item/save.rb', line 9

def save
  save!
  rescue LHC::Error => e
    self.errors = LHS::Errors.new(e.response)
    false
end

#save!Object



16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/lhs/concerns/item/save.rb', line 16

def save!
  service = _data._root._service
  data = _data._raw.dup
  url = if href.present?
   href
  else
    service.instance.find_endpoint(data).compile(data)
  end
  response = service.instance.request(method: :post, url: url, body: data.to_json, headers: {'Content-Type' => 'application/json'})
  self._data.merge!(response)
  true
end