ruby-on-rails-3 - 多个 after_commit 回调(Rails)的执行顺序

标签 ruby-on-rails-3

我最近发现多个after_commit在同一模型中定义的 s 以相反的顺序调用。例如

after_commit method1, :on => :create
after_commit method2, :on => :create
method2之前被调用 method1 .

它总是按 FILO 顺序调用吗?

最佳答案

这种行为在 Rails 5.2.2.1 中仍然存在。

我的解决方案:

after_commit :after_commit_callbacks, :on => :create

def after_commit_callbacks
  method1
  method2
end

关于ruby-on-rails-3 - 多个 after_commit 回调(Rails)的执行顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30625790/

相关文章:

html - Rails 3 不将 HTML 呈现为标记

mysql - 如何从 Rails 3 中的 LEFT OUTER JOIN 获取最新记录

ruby-on-rails - 命名空间路由缺失模板错误

ruby-on-rails - 如何限制摘要中显示的帖子项目数量?

ruby-on-rails-3 - 如何让 Rails 使用 SSL 连接到 PostgreSQL?

ruby-on-rails - Rails find 方法安全吗?

ruby-on-rails - 使用 Capistrano 运行同步或异步任务

ruby-on-rails-3 - Rails 3+ 将 XML 转换为哈希并删除 "root"元素

ruby-on-rails-3 - 乘客+Nginx显示自定义500页面

ruby-on-rails - 如何使用 Form_For 更新模型中的哈希属性