class ActiveModel::Serializer::Associations::HasMany

:nodoc:

def embed_key

def embed_key
  if key = option(:embed_key)
    key
  else
    :id
  end
end

def key

:nodoc:
def key
  if key = option(:key)
    key
  elsif embed_ids?
    "#{@name.to_s.singularize}_ids".to_sym
  else
    @name
  end
end

def serializables

def serializables
  associated_object.map do |item|
    find_serializable(item)
  end
end

def serialize

def serialize
  associated_object.map do |item|
    find_serializable(item).serializable_hash
  end
end

def serialize_ids

def serialize_ids
  # Use pluck or select_columns if available
  # return collection.ids if collection.respond_to?(:ids)
  ids_key = "#{key.to_s.singularize}_ids"
  if !option(:include) && !option(:embed_key) && source_serializer.object.respond_to?(ids_key)
    source_serializer.object.send(ids_key)
  else
    associated_object.map do |item|
      item.read_attribute_for_serialization(embed_key)
    end
  end
end