如何在rails 4中使用电子表格gem?

时间:2013-11-05 13:48:31

标签: ruby-on-rails ruby-on-rails-4 spreadsheet

目前我正在将我的Rails应用程序从rails 3升级到rails 4,我正在使用电子表格(0.7.1) 运行服务器后,我得到了main :: object 的未定义方法`send_file' 这是我的代码:

def financial_export_excel
    book = Spreadsheet::Workbook.new
    sheet = book.create_worksheet
    sheet.merge_cells(5, 0, 6, 0)
    sheet.merge_cells(5, 1, 6, 1)
    sheet.merge_cells(5, 2, 6, 2)
    sheet.merge_cells(5, 3, 6, 3)
    sheet.merge_cells(5, 4, 6, 4)
    sheet.merge_cells(5, 5, 6, 5)
    sheet.merge_cells(5, 6, 6, 6)
    sheet.merge_cells(5, 7, 6, 7)
    sheet.merge_cells(5, 8, 6, 8)
    book.write "sample.xls"
    send_file "sample.xls"
    File.delete "sample.xls"
end

对此有何帮助?

1 个答案:

答案 0 :(得分:1)

似乎您将文件存储在位置并发送以供下载并最终将其删除。

由于您删除了该文件,因此无法下载该文件。如果删除该行

File.delete "sample.xls"

它会起作用。

或者您可以使用send_data方法代替send_file方法。

例如:

  

send_data book,:filename => “sample.xls”,:type =>   “应用程序/ vnd.ms-EXCEL”

参考 send_data