我正在阅读文档,他们在AR生命周期钩子之上:
回调挂钩到Active Record对象的生命周期中 允许您在更改之前或之后触发逻辑 对象状态。这可以用来确保相关和 调用destroy时删除依赖对象(通过覆盖 before_destroy)或在验证之前按摩属性(通过 覆盖before_validation)。作为回调的一个例子 启动后,请考虑Base#save调用新记录:
( - )保存
( - )有效
(1)before_validation
( - )验证
(2)after_validation
(3)before_save
(4)before_create
( - )创建
(5)after_create
(6)after_save
(7)after_commit
这是否意味着在这些调用之后调用after_create钩子:
.save
.create
.valid
答案 0 :(得分:0)
我发现了这个: http://edgeguides.rubyonrails.org/active_record_callbacks.html
after_save在创建和更新时运行,但总是在更具体的回调after_create和after_update之后运行,无论宏调用的执行顺序如何。