chen_miao 发表于 2013-1-15 18:48:47

Rails创建定时任务

 
 
Task & Rexcel

最终生成的报表需要excel格式,我用了Rexcel这个插件,先写下一个task(/lib/task/task.rake)
<div style="color: #333333; font-family: Arvo, helvetica, arial; font-size: 13px; line-height: 18px;" class="highlight">namespace :reports dodesc "my report"task :my_report => :environment do   arr = ActiveRecord::Base.connection.execute("#{your sql}").to_a    workbook = Rexcel::Workbook.new    worksheet = workbook.add_worksheet("reports")    worksheet.add_line(["col1", "col2", "col3"])    worksheet.add_lines(arr)    Rails.logger.info("===================begin to write excel")    File.open("#{RAILS_ROOT}/public/uploads/reports/#{month}月报表.xls", "w") do |f|      f.write(workbook.build)    end   endend
页: [1]
查看完整版本: Rails创建定时任务