是否有可能只控制一个控制器方法调用模型回调?

时间:2013-05-07 14:11:08

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

我只需要在控制器中选择的操作

时使用模型回调
class TestController
 def end_exam(); end
 def resume_exam(); end
 def continue_exam(); end
 def review_exam(); end
end

class Test //Model
 after_find :include_load_question_module // only for end_exam, resume, continue
end // not for review_exam

有没有可能性

3 个答案:

答案 0 :(得分:1)

您可以在以下链接中获取详细信息

http://www.gsubbarao.com/2012/11/ruby-on-rails-3x-skip-callback-and.html

答案 1 :(得分:0)

这应该可以在测试模型(app / models / test.rb)中使用:

skip_callback(:find, :after, :review_exam)

答案 2 :(得分:0)

你不能神奇地做到这一点:模型没有谁在调用它的概念,所以它不能根据当前的控制器动作改变它的行为。

你最好让控制器before_filter在相关实例上调用include_load_question_module