【发布时间】:2014-07-17 01:48:54
【问题描述】:
在我的 Rails 应用程序中,我想在创建并存储上传图像的所有版本后更新我的数据库。是否有一个回调可以确保 recreate_versions!做完了?
背景: 我允许用户旋转他们上传到我网站的图像。我使用 webkit-transform 显示旋转预览,并且仅在用户保存图像时使用 imagemagick 实际旋转图像。但是,为了防止在图像版本控制完成之前暂停应用程序,我在后台任务中执行此操作,并通过应用 webkit-transform 继续应用旋转。在从数据库中提取正确的图像之前,我需要知道图像何时完全旋转(而不是在客户端旋转图像)。
附:我查看了这个页面:https://github.com/carrierwaveuploader/carrierwave/wiki/How-to:-use-callbacks,但我也看到这些回调是在任何版本之后调用的,而不是在所有版本控制完成之后。
【问题讨论】:
-
你得到这个问题的答案了吗?如果可以,可以分享一下吗?
-
我一直没有得到回复,但我相信这实际上是使用sidekiq在后台任务中执行版本控制的功能。 Sidekiq 没有内置任何东西来让您知道任务何时完成,但是有一些宝石可以做到这一点,例如 sidekiq 状态:github.com/utgarda/sidekiq-status。我还没有机会实施这些更改,但这就是我要开始的方向。
标签: ruby-on-rails imagemagick carrierwave sidekiq