我使用delay_job运行了一些后台作业,我想知道如何才能检索到该作业需要花费多长时间
信息显示在服务器上,但是我不知道如何保存它才能在控制器/视图中使用它
Delayed::Backend::ActiveRecord::Job Load (0.8ms) SELECT "delayed_jobs".* FROM "delayed_jobs" WHERE ("delayed_jobs"."id" = 83) LIMIT 1
Completed 200 OK in 9ms (Views: 6.8ms | ActiveRecord: 0.8ms)
AREL (0.4ms) DELETE FROM "delayed_jobs" WHERE ("delayed_jobs"."id" = 83)
最佳答案
由于延迟作业是在完成时从数据库中删除的,因此最简单的方法是让作业本身在启动时在数据库中进行记录,然后在作业完成时在回调中设置完成时间。它不雅致,但易于在现有系统上实现。