Method: Serial::Serializer#map

Defined in:
lib/serial/serializer.rb

#map(context = nil, list) ⇒ Array<Hash>

Serialize a list of objects with this serializer, optionally within a context.

Examples:

# app/serializers/person_serializer.rb
PersonSerializer = Serial::Serializer.new do |h, person|
  h.attribute(:id, person.id)
  h.attribute(:url, people_url(person))
end

# app/controllers/person_controller.rb
def index
  people = Person.all
  render json: PersonSerializer.map(self, people)
end

Parameters:

  • (defaults to: nil)

    context to execute serializer in, or nil to use regular block closure rules.

Returns:

See Also:



84
85
86
# File 'lib/serial/serializer.rb', line 84

def map(context = nil, list)
  list.map { |item| call(context, item) }
end