如何从rails 3路径中找到控制器和操作

时间:2012-04-05 17:14:05

标签: ruby-on-rails-3 routing

这基本上是{3}}的rails 3版本。如果没有自己解析它,我如何从URL字符串中获取组件(控制器,操作,参数)?

方法ActionController::Routing::Routes#recognize_path已经this question,我无法以相同的方式获得被替换的方法:

1.9.3p125 :019 > ActionDispatch::Routing::RouteSet.recognize_path('/accounts/new', {:method => :get})
NoMethodError: undefined method `recognize_path' for ActionDispatch::Routing::RouteSet:Class

这是有道理的,因为它不是静态方法。看源头也没有启发我。任何指针都会受到欢迎。

编辑:

ruby 1.9.3p125 (2012-02-16 revision 34643) [x86_64-darwin11.3.0]
Rails 3.2.3

1 个答案:

答案 0 :(得分:7)

这对我有用(Ruby 1.9.2,Rails 3.1.0):

Rails.application.routes.recognize_path('/accounts/new', {:method => :get})