2012-07-05 53 views
1

我有,用於用戶的用戶控制網頁名稱簡介Ruby on Rails的得到途徑

然後我從

/users/{username} 

路由到

/{username} 

但現在,如果我想添加頁面,如

  • 關於我們
  • 幫助
  • 聯繫我們
  • 服務類型
  • 隱私
  • 等...

我面對這裏我不能訪問的問題,我是通過params[]代碼頁

我的路線看起來像

match '/home' => 'home#index' 

    #change /users/{username} to /{username} 
    match '/:username' => 'users#show' 

我需要知道哪個頁面我是我的導航菜單,所以我可以添加一個活動類來突出顯示頁面

有沒有什麼辦法可以做到這一點?

+0

您可以使用CURRENT_PAGE? – ramblex 2012-07-05 16:33:16

+0

我得到一個錯誤'未定義的局部變量或方法'current_page'' – fxuser 2012-07-05 16:34:29

+0

該方法是'current_page?' - 問號是方法名稱的一部分:) http://api.rubyonrails.org/classes/ActionView/Helpers /UrlHelper.html#method-i-current_page-3F – ramblex 2012-07-05 16:38:27

回答

0

問題重複我在使用

params[:controller]哪個控制器if條件

0
for /fxuser route 
controller.action_name  # => show 
controller.controller_name # => users 

for /home route 
controller.action_name  # => index 
controller.controller_name # => home 
+0

我真的不知道這個......我是否應該把'/ fxuser'改成''/:username''這樣的東西,我還會在'for'下改變什麼呢?線? – fxuser 2012-07-05 16:38:26

0

您可以使用params[:controller],雖然我不確定這是否是最好的方法。

而且你的問題聽起來像通過檢查解決了Highlight tab in menu

+0

我只有當我創建新頁面時突出顯示標籤的問題,因爲我無法使用'params []'變量來獲取我在哪個頁面上 – fxuser 2012-07-05 16:37:37

+0

我不明白'創建新頁面'的含義! – CubaLibre 2012-07-05 16:41:29

+0

我想爲我的網站添加一個About頁面...我如何檢測到我在'/ about'頁面上,所以我可以突出顯示我的菜單中的About項目? – fxuser 2012-07-05 16:43:07