Module: JSONAPI::ResourceActions::Serialization

Extended by:
ActiveSupport::Concern
Included in:
JSONAPI::ResourceActions
Defined in:
lib/json_api/controllers/concerns/resource_actions/serialization.rb

Instance Method Summary collapse

Instance Method Details

#serialize_collection(resources) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/json_api/controllers/concerns/resource_actions/serialization.rb', line 16

def serialize_collection(resources)
  includes = parse_include_param
  fields = parse_fields_param
  all_included = []
  processed = Set.new

  data = resources.map do |r|
    result = serialize_single(r, includes, fields)
    collect_included(result, all_included, processed)
    result[:data]
  end

  build_collection_response(data, all_included)
end

#serialize_resource(resource) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/json_api/controllers/concerns/resource_actions/serialization.rb', line 8

def serialize_resource(resource)
  JSONAPI::Serializer.new(resource).to_hash(
    include: parse_include_param,
    fields: parse_fields_param,
    document_meta: jsonapi_document_meta,
  )
end