class ActiveModel::CsvArraySerializer
Public Class Methods
new(objects, options = {})
click to toggle source
# File lib/active_model/csv_array_serializer.rb, line 6 def initialize(objects, options = {}) @each_serializer = options[:each_serializer] @objects = objects @options = options end
Public Instance Methods
to_csv()
click to toggle source
# File lib/active_model/csv_array_serializer.rb, line 12 def to_csv serializer = @each_serializer || ActiveModel::CsverizerFactory serializer = serializer.new(@objects.first, @options) options_hash = @options.slice(:serializer) CSV.generate do |csv| csv << serializer.attribute_names serializer = @each_serializer || ActiveModel::CsverizerFactory @objects.each do |record| serializer.new(record, options_hash).to_a.each { |record| csv << record } end end end