Sha256: 594f63f656299ce01205040b57aac017148081c310505572297fb215a7ec991a
Contents?: true
Size: 485 Bytes
Versions: 2
Compression:
Stored size: 485 Bytes
Contents
module ControllerMixins::CsvInstanceMethods require 'csv' def to_csv(objects, skip_attributes=[], delimiter= ",") return "" if objects.blank? objects_class = objects.first.class filtered_columns = objects_class.column_names - skip_attributes CSV.generate do |csv| csv << filtered_columns objects.each do |object| csv << filtered_columns.collect { |a| object.attributes[a].blank? ? '' : "'#{object.attributes[a]}'" } end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
it-logica-application-backbone-0.1.7 | lib/controller_mixins/csv_instance_methods.rb |
it-logica-application-backbone-0.1.6 | lib/controller_mixins/csv_instance_methods.rb |