Module: JSONAPI::ResourceActions::Serialization

Extended by:
ActiveSupport::Concern
Includes:
IncludePreloading
Defined in:
lib/json_api/controllers/concerns/resource_actions/serialization.rb

Instance Method Summary collapse

Instance Method Details

#serialize_collection(resources) ⇒ Object



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

def serialize_collection(resources)
  includes = parse_include_param
  fields = parse_fields_param
  resources = scope_with_includes(resources)
  resources_array = resources.to_a

  preload_included_resource_associations(resources_array, includes)

  data, all_included = serialize_resources_with_includes(resources_array, includes, fields)
  build_collection_response(data, all_included)
end

#serialize_resource(resource) ⇒ Object



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

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