我想通过使用axlsx并保存它(Rails4.2)在后台生成excel文件。在axlsx的GitHub页面中,它表示As of Rails 4.1 you must use render_to_string to render a mail attachment
。然而,它引发了我的错误NoMethodError: undefined method 'render_to_string' for #<CreateExcelSheetWorker:0x007fbccf51db30>
将xlsx文件保存到Sidekiq中的磁盘作为背景
我工人阶级:
class CreateExcelSheetWorker
include Sidekiq::Worker
include Sidetiq::Schedulable
recurrence { daily }
def perform()
model = SomeModel.where(wanted: true).order(started_at: :desc)
xlsx = render_to_string handlers: [:axlsx], formats: [:xlsx], template: "template/file", locals: {model: model}
path = "/tmp/a.xlsx"
File.open(path, "w+") do |f|
f.write(xlsx)
end
end
end
我无法弄清楚如何解决这一问题,任何帮助表示赞赏。
您链接的页面是'axlsx_rails',不''axlsx',那些是不同的宝石 –