module Sunrise::Models::User::ClassMethods

Public Instance Methods

to_csv(options = {}) click to toggle source
# File lib/sunrise/models/user.rb, line 32
def to_csv(options = {})
  options = { columns: [:id, :email, :name, :current_sign_in_ip] }.merge(options)
  query = unscoped.order([:id, :desc]).select(options[:columns])

  ::CSV.generate do |csv|
    csv << options[:columns]

    query.find_each do |user|
      csv << options[:columns].inject([]) do |items, attr_name|
        items << user.send(attr_name)
      end
    end
  end
end