class ScopedSerializer::CollectionSerializer

Public Class Methods

new(*args) click to toggle source
Calls superclass method ScopedSerializer::ArraySerializer::new
# File lib/scoped_serializer/collection_serializer.rb, line 4
def initialize(*args)
  super

  options = args.extract_options!

  # Allow to define own model class
  @model_class = options.delete(:model_class) || @array.klass

  # Configure root element
  @options[:root] = default_root_key(@model_class).pluralize if @options[:root].nil?
end

Public Instance Methods

to_csv(options={}) click to toggle source
# File lib/scoped_serializer/collection_serializer.rb, line 16
def to_csv(options={})
  attributes = ScopedSerializer.find_serializer_by_class(@model_class)
         .find_scope(options[:scope] || :default)
         .attributes

  super(options.merge(:columns => attributes))
end