Railsのモデル内容をCSVで出力する方法について

データ周りをみたい場合、データベースを扱える人は問題ないのですが使えない人がデータを見る方法としてCSVがあります。Railsだと一括で出力できるライブラリーって見つからないので作成しました。

mode_dump.rb

class ModelDump
  def self.model_to_csv(model_name, file)
    csv_generate = CSV.generate do |csv|
      csv << model_name.column_names
      model_name.all.each do |model|
        csv << 
  model.attributes.values_at(*model_name.column_names)
      end
    end
    File.open(file, 'w') do |file|
      file.write(csv_generate)
    end
  end
end

ModelDump.model_to_csv(User, '/tmp/user_dump.csv')

複数のモデルの内容を出力するときに便利なので使ってみてください。