我对RoR很新,我正在寻找一种方法来获取给定控制器,动作和放大器的路径。 PARAM。
类似于url_for()但没有域和协议。
让我说我有:
params = {"controller"=>"controller", "action"=>"edit", "project_id"=>"1"}
我需要得到:
route = "/controller/edit/1"
最好不要手动构建路线,如果我不需要拆分url_for()的结果。
RoR原生支持这样的功能吗?这可能是一个简单的问题,但我找不到答案。
答案 0 :(得分:4)
这是将生成您想要的路径的助手:
edit_controller_path(project_id: 1)
您可以使用此助手生成链接的完整路径(包括主机):
edit_controller_url(project_id: 1)
编辑: 更多信息,请访问 http://guides.rubyonrails.org/routing.html#path-and-url-helpers
答案 1 :(得分:2)
您应该可以使用以下
link_to "Link Content", :controller => "my_controller", :action => "my_action", :project_id => 1
这将生成<a>
,其中包含指向您的控制器/操作的链接。