Rails 3.2.13 recogn_path返回约束的路由错误

时间:2013-04-15 17:07:10

标签: ruby-on-rails ruby ruby-on-rails-3

我的路线中有两条路径,同一条路径指向不同的控制器和动作

match '/:id' => 'users#show', :as => 'user', :constraints => UserConstraint
match '/:id' => 'customers#show', :as => 'customer'

我的约束类有以下匹配?方法

def self.matches?(request)
    return User.exists?(request.path_parameters[:id])
 end

当我在浏览器中调用网址时,此功能正常。但是,这不适用于recogn_path方法。

Rails.application.routes.recognize_path("/trump", {:method => :get}) 

返回路由错误(没有路由匹配),而在浏览器中调用时可以正常路由它。

用户:id =>特朗普存在。

如何通过recogn_path方法返回路径详细信息?

1 个答案:

答案 0 :(得分:5)

显然,这是Rails中的一个错误,请参阅:

https://github.com/rails/rails/issues/8679