Rails - 如何显示延迟任务队列(delayed_job)的进度?

3
我刚开始接触Ruby on Rails,现在有一个rails项目,其中运行大量的后台任务(例如同时复制几百个文件)。目前这项工作使用delayed_job在后台运行,但我想给用户一些关于进程剩余时间的指示。我的最初想法是显示给用户一个进度条,但现在我只想简单地显示Delayed::Job.count函数中任务的倒计时。我假设这不会太难,可以有一个AJAX视图,根据Delayed::Job.count函数动态更新,但我的问题是如何在视图中实现这一点?谢谢提前。
1个回答

3
您可以使用JavaScript每十秒钟调用一个AJAX请求。
setTimeout(f, time);

在请求之后,您需要再次设置setTimeout(f,time)函数。

如果您知道延迟作业的ID,则应该能够查询正在处理的ID上方的作业数量。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接