Class: SimpleJsonApi::ArraySerializer

Inherits:
Serializer
  • Object
show all
Defined in:
lib/simple_json_api/array_serializer.rb

Overview

The ArraySerializer will serialize a collection

Instance Attribute Summary

Attributes inherited from Serializer

#_builder, #_each_serializer, #_object

Attributes included from DSL

#_attributes, #_default_fields, #_required_associations

Instance Method Summary collapse

Methods inherited from Serializer

for, for_polymorphic, for_regular, includes, #initialize, register_serializer

Methods included from DSL

#attribute, #belongs_to, #default_attributes, #default_fields, #has_many, #has_one, #inherited, #required_associations, #serializes

Constructor Details

This class inherits a constructor from SimpleJsonApi::Serializer

Instance Method Details

#_associationsObject



20
21
22
# File 'lib/simple_json_api/array_serializer.rb', line 20

def _associations
  _each_serializer._associations if _each_serializer
end

#_root_nameObject



16
17
18
# File 'lib/simple_json_api/array_serializer.rb', line 16

def _root_name
  _each_serializer._root_name
end

#associated_object(association_name) ⇒ Object



12
13
14
# File 'lib/simple_json_api/array_serializer.rb', line 12

def associated_object(association_name)
  serializers.map { |serializer| serializer.send(association_name) }
end

#serializeObject



5
6
7
8
9
10
# File 'lib/simple_json_api/array_serializer.rb', line 5

def serialize
  _object.map do |object|
    serializer = _each_serializer.new(object, _builder)
    Resource.new(serializer.serialize)
  end
end

#serializersObject



24
25
26
27
28
# File 'lib/simple_json_api/array_serializer.rb', line 24

def serializers
  _object.map do |object|
    _each_serializer.new(object, _builder)
  end
end