为什么在重定向到路由时导轨重定向工作,在重定向到某个操作时不起作用?

时间:2013-01-30 16:45:49

标签: ruby-on-rails ruby-on-rails-3.2 rails-routing controllers

我一直在使用rails double渲染错误几周了(渲染和/或重定向在此操作中被多次调用。请注意,您可能只调用渲染或重定向,并且在mos ....等等...)。

我发现如果我有这样的陈述:

redirect_to action_name and return

我得到了双重渲染错误。但是,当我指定一个名为action_name_path的路由时,并执行如下语句:

redirect_to action_name_path

我不再得到双重渲染错误了。那是为什么?

1 个答案:

答案 0 :(得分:0)

redirect_to应该用于转到另一个控制器或外部网页并自动返回...

使用redirect_to时,您需要指定要渲染的控制器和操作。您可以通过调用路由(action_name_path(:params []))来实现。

如果要在同一个控制器中调用其他方法或渲染不同的视图,则不需要渲染控制器,而不是redirect_to,可以使用渲染方法。

请参阅文档