如何防止在Rails中redirect_to之后调用者继续?

时间:2009-12-17 07:51:23

标签: ruby-on-rails ruby

我在控制器中定义了一个前置过滤器:

before_filter :find,  :only => [:caller]

我希望在“find”方法中捕获异常:

def find 
   begin
     ...
   rescue Exception
     redirect_to somewhere
   end
 end

但是如何阻止“调用者”方法继续执行?

2 个答案:

答案 0 :(得分:2)

如果before_filter呈现或重定向,则执行会自动停止。

了解详情:http://guides.rubyonrails.org/action_controller_overview.html#filters

对于ActiveRecordbefore_validation回调,请使用return false停止保存记录。

答案 1 :(得分:0)

您是否在重新定位后尝试了return

    redirect_to ...
    return # <<
  end
end