检测自上次运行长时间运行的流程以来模型数据是否已更改?

时间:2013-11-18 06:38:04

标签: ruby-on-rails

我正在组合来自多个模型的数据,然后将数据传递给长时间运行的进程。我希望能够记录该进程使用的数据,然后查询数据库以检查自上次运行该进程以来是否有任何表已更改。

例如,一个控制器操作将启动该过程并在模型开始时记录模型的状态。另一个控制器操作用于确定自上次进程运行以来数据是否已更改。

有没有人有这种问题的解决方案?

有关以问题为中心的SQL版本,请参阅this question。现在我想弄清楚如何在没有手写SQL的情况下处理这个问题。

1 个答案:

答案 0 :(得分:1)

https://github.com/rails/rails-observers

查看Action Controller Sweeper部分。可能涉及一些相当多的工作,但最终可能是值得的。

注意:观察者是rails 3.x的核心宝石只适用于4.x及以上。但无论如何,文档可能会有所帮助。