Module: Sunrise::Models::User::ClassMethods

Defined in:
lib/sunrise/models/user.rb

Instance Method Summary collapse

Instance Method Details

#to_csv(options = {}) ⇒ Object



31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/sunrise/models/user.rb', line 31

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