我在我的 Rails 应用程序中集成了一些非 Rails 模型表。一切都很顺利,我设置模型的方式是:
class Change < ActiveRecord::Base
  establish_connection(ActiveRecord::Base.configurations["otherdb_#{RAILS_ENV}"])
  set_table_name  "change"
end
这样我就可以将Change模型用于所有现有记录find等。
现在我想在将记录添加到表时运行某种通知。由于模型永远不会通过创建Change.new,因此Change.save使用ActiveRecord::Observer不是一种选择。
每当添加新记录时,有什么方法可以让我的一些 Rails 代码被执行?我看了看,delayed_job但无法完全理解,如何设置。我想它是围绕一个 cron-job 发展的,它选择自上次运行作业以来创建的所有行,然后为每一行调用相应的 Rails 代码。
更新目前正在查看 Javan 的When,看起来它可以解决“从 cron 部分运行 rails 代码”。