Rails redirect_to无效

时间:2011-07-22 13:52:39

标签: ruby-on-rails redirect

我有一个filter_before过滤器,用于检查param是否为true。如果是我的应用程序这样做。但是,&& return似乎造成了一些问题。当我拿出它时,它会将每个页面重定向到所需的countdown页面 - 但随后它会循环或双重渲染。

redirect_to :countdown && return if @online == 1

有没有办法将它包装在if语句中?

类似的东西:

if current_page(:countdown)
  redirect_to :countdown if @online == 1
end

3 个答案:

答案 0 :(得分:1)

您最好从countdown中排除before_filter操作,以避免无限循环。

类似的东西:

before_filter :check_countdown, :except => :countdown

那就是说,你所做的是有效的:

  redirect_to :countdown and return if @online == 1

答案 1 :(得分:1)

您需要使用and代替&&

来自Rails指南:

  

确保使用并返回,而不是&&返回因为虽然   前者会工作,后者不会因运算符优先   Ruby语言。

http://guides.rubyonrails.org/layouts_and_rendering.html

答案 2 :(得分:0)

它可能对你有用

return redirect_to :countdown if @online == 1