Module: JSONAPI::Serialization::RelationshipsSerialization

Included in:
JSONAPI::Serializer
Defined in:
lib/json_api/serialization/concerns/relationships_serialization.rb

Instance Method Summary collapse

Instance Method Details

#serialize_relationships(requested_relationship_names = nil) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/json_api/serialization/concerns/relationships_serialization.rb', line 6

def serialize_relationships(requested_relationship_names = nil)
  relationships = {}
  relationship_definitions = definition.relationship_definitions
  if requested_relationship_names
    requested_set = requested_relationship_names.map(&:to_sym)
    relationship_definitions = relationship_definitions.select { |r| requested_set.include?(r[:name]) }
  end

  relationship_definitions.each do |rel_def|
    serialize_relationship(rel_def, relationships)
  end

  relationships
end