Ruby on rails rails如何将数据导出到excel
我有如下的桌子 现在,我想将其导出到excel,这样我就可以在ms excel中打开它了,您可以使用gem 您可以使用Ruby on rails rails如何将数据导出到excel,ruby-on-rails,Ruby On Rails,我有如下的桌子 现在,我想将其导出到excel,这样我就可以在ms excel中打开它了,您可以使用gem 您可以使用来创建csv方法 def index @records = .... respond_to do |format| format.html # index.html.erb format.xml { render :xml => @records } format.csv { @records.to_csv } end end 或
来创建csv
方法
def index
@records = ....
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @records }
format.csv { @records.to_csv }
end
end
或者自定义输出并在控制器中使用send_data
方法
format.csv do
csv_string = FasterCSV.generate do |csv|
# header row
csv << ["id", "Column1", "Column1"]
# data rows
@records.each do |r|
csv << [r.id, r.column1, r.column2]
end
# send it to the browser
send_data csv_string,
:type => 'text/csv; charset=iso-8859-1; header=present',
:disposition => "attachment; filename=records.csv"
end
format.csv do
csv|U string=FasterCSV.generate do|csv|
#标题行
csv“附件;文件名=records.csv”
结束
您可以使用gem
您可以使用来创建csv
方法
def index
@records = ....
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @records }
format.csv { @records.to_csv }
end
end
或者自定义输出并在控制器中使用send_data
方法
format.csv do
csv_string = FasterCSV.generate do |csv|
# header row
csv << ["id", "Column1", "Column1"]
# data rows
@records.each do |r|
csv << [r.id, r.column1, r.column2]
end
# send it to the browser
send_data csv_string,
:type => 'text/csv; charset=iso-8859-1; header=present',
:disposition => "attachment; filename=records.csv"
end
format.csv do
csv|U string=FasterCSV.generate do|csv|
#标题行
csv“附件;文件名=records.csv”
结束
我建议使用成熟的。我在Rails 3上使用它,没有任何问题
整个过程将是:
book = Spreadsheet::Workbook.new
sheet = book.create_worksheet :name => 'Customers'
sheet.row(0).concat %w{Name Country Acknowlegement}
book.write '/path/to/output/excel-file.xls'
我建议使用成熟的。我在Rails 3上使用它,没有任何问题
整个过程将是:
book = Spreadsheet::Workbook.new
sheet = book.create_worksheet :name => 'Customers'
sheet.row(0).concat %w{Name Country Acknowlegement}
book.write '/path/to/output/excel-file.xls'
Ruby 1.9有一个内置的CSV库,它的API与FasterCSV gem非常相似(实际上,gem已经集成到Ruby中了!) Ruby 1.9有一个内置的CSV库,其API与FasterCSV gem非常相似(实际上,gem已经集成到Ruby中!) 成熟版本号为0.x。hmmmmSpreadsheet对我来说也很好,直到工作表的大小变得太大。它仍然可以工作,但在db查询完成后创建XLS文件的速度非常慢。hmmmmSpreadsheet对我来说也很好,直到工作表的大小变得太大。它仍然可以工作,但在db查询完成后创建XLS文件的速度非常慢。