12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
# File 'lib/flapjack/gateways/jsonapi/methods/resource_delete.rb', line 12
def resource_delete(klass, id)
resources_data, _ = wrapped_params(:allow_nil => !id.nil?)
ids = resources_data.nil? ? [id] : resources_data.map {|d| d['id']}
klass.jsonapi_lock_method(:delete) do
if id.nil?
resources = klass.intersect(:id => ids)
halt(err(404, "Could not find all records to delete")) unless resources.count == ids.size
resources.destroy_all
else
klass.find_by_id!(id).destroy
end
end
true
end
|