插入后进行Rails回调

时间:2019-07-18 15:08:19

标签: ruby-on-rails callback after-save after-create

我正在使用闭合表对我的其中一个模型的层次结构进行建模。这样,每当调用 Model.create 时,我都会使用 after_create 钩子来创建tree_path对象。我还希望每当 #new #save 一起调用时,此钩子就会运行。这意味着我将不得不使用 after_save 而不是 after_create ,但是,after_save也可以在更新中运行,这是我所不希望的。

我可以在其中对对象的初始插入(在创建或首次保存时)运行回调,但不能在更新时运行回调吗?通过回调创建更多对象是不好的形式吗?

1 个答案:

答案 0 :(得分:0)

经过更多调查,似乎只有在调用对象之前和之后都没有保存对象的情况下,after_create实际上确实在调用save之后运行。