1
读取Running Rails jobs in background threads后,我尝试重构一个控制器操作,该操作基本上以xml格式呈现报表并将报表文件发送到用户浏览器。现在该动作运行c。 30秒,所以我认为这是一个很好的候选人的背景工作。 Hovewer,我遇到了一个问题:我似乎无法从新线程访问报告erb模板。将控制器动作放入线程
这是我第一次尝试使用线程,我不确定是否能够使用该方法完成重构。行动
简化代码重构之前:
@orders = Order.onrange(range).includes(:logo => [:simulations, :pantones])
respond_to do |format|
format.xml {
orders_xml = render_to_string template: 'orders/bom'
send_data orders_xml, filename: "BOM raport - #{range.to_s}.xml"
}
end
我没有考虑活动作业,因为我的项目是在RoR 4.0.12上。也许是升级的时候了?我会看看这个指南,谢谢。 – adass