Sha256: e59b9dbfd3c423129bb0bd7b033821f1df631d3b68081f12166c339f3f0a9e1e

Contents?: true

Size: 610 Bytes

Versions: 1

Compression:

Stored size: 610 Bytes

Contents

require 'rails_csv_renderer/renderable'
require 'rails'

module RailsCsvRenderer
  class Railtie < Rails::Railtie
    initializer 'rails_csv_renderer' do
      ActiveSupport.on_load(:action_controller) do
        ActionController::Renderers.add(:csv) do |obj, options|
          filename = options[:filename] || "#{ Rails.application.class.parent_name }-report-#{ Time.current }.csv"
          obj.extend RailsCsvRenderer::Renderable
          data = obj.to_custom_csv(options)
          send_data(data, type: Mime::CSV, disposition: "attachment; filename=#{filename}")
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rails_csv_renderer-0.2.4 lib/rails_csv_renderer/railtie.rb