to_csv on Rails
This simple plugin gives you the ability to call to_csv to a collection of activerecords. The builder options are the same as to_json / to_xml, except for the :include.
Usage
@posts = Post.all
#
# default are export header and all fileds
#
@posts.to_csv
@posts.to_csv(:only => [:title, :body])
@posts.to_csv(:except => [:id])
@posts.to_csv(:header => false)
Example
class PostsController < ApplicationController
def index
@posts = Post.all
respond_to do |format|
format.csv { send_data(@posts.to_csv) }
#format.csv {
# filename = “posts-#Time.now.strftime(”%Y%m%d%H%M%S“).csv”
# send_data(@posts.to_csv, :type => "text/csv; charset=utf-8; header=present", :filename => filename)
#}
end
end
end
Install
gem install to_csv-rails
gem 'to_csv-rails'
bundle install
git clone http://github.com/liangwenke/to_csv-rails.git
Note
Copyright © 2010 [email protected], released under the MIT license