Ruby
Rails

Ruby1.9とRailsでCSV出力(SJIS)

More than 5 years have passed since last update.

Usersテーブルの中身をすべてCSVで書き出す例

UserModel < ActiveModel::Base

def self.csv
require 'tempfile'
require 'csv'

csv_string = CSV.generate do |csv|
csv << ['グループID','名前','メールアドレス']
self.all.each do |m|
csv << [m.group_id, m.name, m.email]
end
end
csv_file = Tempfile.new('download', :encoding => Encoding::CP932)
csv_file.puts csv_string
csv_file.close
csv_file.path
end
end

User.csv #=> csv出力されたファイルのパス名