module DHS::Item::Destroy
Public Instance Methods
destroy(options = {})
click to toggle source
# File lib/dhs/concerns/item/destroy.rb, line 10 def destroy(options = {}) options ||= {} options = options.merge(method: :delete) data = _data._raw.dup url = url_for_deletion!(options, data) options = options.merge(url: url) _data._request = _data.class.request(options)._request _data end
Private Instance Methods
endpoint_for_deletion(data, options)
click to toggle source
# File lib/dhs/concerns/item/destroy.rb, line 34 def endpoint_for_deletion(data, options) record.find_endpoint(merge_data_with_options(data, options)) end
url_for_deletion!(options, data)
click to toggle source
# File lib/dhs/concerns/item/destroy.rb, line 22 def url_for_deletion!(options, data) return href if href.present? endpoint = endpoint_for_deletion(data, options) endpoint.compile( merge_data_with_options(data, options) ).tap do endpoint.remove_interpolated_params!(data) endpoint.remove_interpolated_params!(options.fetch(:params, {})) options.merge!(endpoint.options.merge(options)) if endpoint.options end end