2014-01-16 57 views
1

有沒有辦法從控制器動作獲取匹配的路由模式?例如。如果我有以下途徑定義...Rails 3:獲取當前控制器動作的路由模式

get '/foo/:id.:format' => 'foo#show' 

... FooController的#show動作中,是有可能得到包含路由模式(在本例中,字符串「/富/:ID:格式」)?

回答

5

我想通了。這有點破解,但這是我想出的。只需將此添加到ApplicationController:

def get_route_pattern 
    Rails.application.routes.router.recognize(request) { |route| return route.path.spec.to_s } 
end 
+0

我喜歡它!我將它作爲helper_method添加到控制器,並作爲<%= debug(get_route_pattern)添加到我的應用程序佈局中,如果Rails.env.development? %> –

相關問題