如何将操作转发到Rails中的另一个控制器?

时间:2013-12-15 07:49:53

标签: ruby-on-rails routing forward

Rails 4 - 我有一个处理产品www.site.com/catalog/shoes/sport/ABC123和类似www.site.com/catalog/shoes/sport等路线的操作 问题是我必须以格式www.site.com/href显示一些付费链接(不是我的选择,我只是必须),并且该链接必须作为某个产品类别处理。这不是唯一的情况 - 将来,可能会有一些其他“短”链接,指向我网站的其他部分

当我使用Symfony时,我可以写$this->forward('controller', 'action')并获得另一个控制器的输出,同时保存短路线,但在Rails中我只看到redirect_to,并且它不保留短网址?

假设我有路由get ':href' => 'index#simple', as: :simple,如何将执行转发到另一个控制器(或只是调用控制器的方法?),保留原始路由? - 当然是“轨道方式”

谢谢

1 个答案:

答案 0 :(得分:0)

您可以从控制器操作中使用'redirect_to controller_action_path'/ redirect_to'/ controller / action'。