class HubStore::Exporter
Attributes
resource[R]
Public Class Methods
new(resource:)
click to toggle source
# File lib/hub_store/exporter.rb, line 5 def initialize(resource:) @resource = resource end
Public Instance Methods
run()
click to toggle source
# File lib/hub_store/exporter.rb, line 9 def run export_csv end
Private Instance Methods
columns()
click to toggle source
# File lib/hub_store/exporter.rb, line 29 def columns @_columns ||= resource.columns.map(&:name) end
csv_file_name()
click to toggle source
# File lib/hub_store/exporter.rb, line 25 def csv_file_name resource.to_s.demodulize.pluralize.underscore + ".csv" end
export_csv()
click to toggle source
# File lib/hub_store/exporter.rb, line 17 def export_csv CSV.open(csv_file_name, "w", write_headers: true, headers: columns) do |csv| resource.find_each do |record| csv << record.attributes.values end end end