我可以为任意模型方法设置Active Record回调吗?我可以看到它有用,类似于控制器中的before_filter。
有办法做到这一点吗?
答案 0 :(得分:1)
Active Model Callbacks为任何类提供了一个接口,可以像回调一样使用Active Record。你可以在这里查看http://api.rubyonrails.org/classes/ActiveModel/Callbacks.html
这适用于模型中的任意方法。这是一段代码片段。
class MyModel
extend ActiveModel::Callbacks
define_model_callbacks :initialize, :only => :after
after_initialize :update_info
def initialize
run_callbacks :initialize do
# Your create action methods here
end
end
def update_info
puts 'info'
end
end
这将在完成“initialize”方法后调用“update_info”方法。