如何分离回调,使after_create
运行一组代码,而!after_create
运行另一组代码?
after_create
回调用于新对象,after_update
回调用于持久化对象。
after_create
新对象创建后
after_update
现有对象更新后
after_save
创建和更新
您可以有多个回调,这些回调仅根据条件执行
型号.rb
after_create :only_do_if_this
after_create :only_do_if_that
def only_do_if_this
if do_this?
# code...
end
end
def only_do_if_that
if do_that?
# code...
end
end
您也可以将条件添加到回调本身
after_create :only_do_if_this, :if => proc { |m| m.do_this? }
after_create :only_do_if_that, :if => proc { |m| m.do_that? }
def only_do_if_this
# code ...
end
def only_do_if_that
# code...
end