2013-12-13 101 views
9

我对RoR相当陌生,我正在寻找一种获取给定控制器路线的方法,动作& param。Ruby on Rails:使用控制器,动作和参数获取路线

类似于url_for(),但没有域和协议。

可以说我有:

params = {"controller"=>"controller", "action"=>"edit", "project_id"=>"1"} 

我需要得到:

route = "/controller/edit/1" 

如果我没有手工打造的航线这将是最好的,如果我不需要拆分url_for()的结果。

RoR原生支持这种功能吗?这可能是一个简单的问题,但我找不到答案。

+0

是否有一个特定的原因来使用此与使用命名的URL? – screenmutt

+2

'my_action_my_controller_path(project_id:1)'是助手,会比你想要的生成一个路径(如果需要,使用'my_action_my_controller_url') – MrYoshiji

+1

@MrYoshiji是的!谢谢;这正是我所期待的。我发现更多关于这个帮手的信息:http://guides.rubyonrails.org/routing.html#path-and-url-helpers –

回答

1

您应该能够使用以下

link_to "Link Content", :controller => "my_controller", :action => "my_action", :project_id => 1 

这将产生<a>一个链接到你的控制器/动作。