2016-01-11 154 views
2

我有以下設置的路線,其指向同一個觀點:如何通過助手名稱獲取路線?

get 'mypath', to: 'home#mypath', as: 'mypath' 
get 'mypath-v2', to: 'home#mypath', as: 'mypath_v2' 
get 'mypath-v3', to: 'home#mypath', as: 'mypath_v3' 

我如何檢查我使用一個路徑或其他視圖裏面?

例如,如果我想獲得mypath-v2mypath_v2,我該怎麼做?

回答

0

您將通過附加_path_url

例如這裏稱之爲是一個鏈接的例子:

<%= link_to 'Link to mypath-v2 page', mypath_v2_path %> 

OR

<%= link_to 'Link to mypath-v2 page', mypath_v2_url %> 

對它們進行比較,你可以看看請求對象。當您撥打request.pathrequest.fullpath時,它會引入鏈接的實際地址請求路徑。

所以......

<%= if request.path.eql?('mypath-v2') ? "Used It" : "Other Route" %> 
1

嗯,對我來說是更好的做用PARAMS這樣的事情。你可以這樣定義你的路由:

get "mypath/:version", :as => "mypath" 

在這種情況下,你將能夠使用params [:version]來闡明當前路徑。