2011-02-07 58 views
1

我對ROR很新,我非常喜歡它,只要我開發我的第一個應用程序。當我將格式應用於導航菜單時,我遇到了與我的應用程序模板相關的問題。Rails 3如果路徑匹配根目錄,則應用CSS類:至路徑

是否有可能檢查一個url路徑是否匹配根:到config.rb中設置的路徑?我有一個幫助器方法,返回字符串「current」,它添加了CSS類樣式以突出顯示所選菜單項。只要我不在主頁,輔助方法就可以正常工作。當我的網址是www.localhost:3000/css當前類不適用於產品鏈接,因爲request_uri =「/」不等於「/ products」。當我在主頁上時,我希望將css類「current」應用於Products菜單項。

是否有任何條件邏輯我可以用來得到根:路徑,並檢查它是否匹配is_current的參數路徑?

這是我的代碼:

routes.rb中根:到setto指向產品索引視圖

根:爲=>的產品#索引'

application.html.erb

  • %<的link_to = '商品',products_path,:類=> is_current(products_path)%>
  • < (%)=的link_to '報告',reports_path,:類=> is_current(reports_path)%>
  • application_helper.rb
    def is_current(path) 
        if request.request_uri == path 
         return 'current' 
        end 
    end 
    

    任何幫助,將不勝感激。

    感謝, bkasen

    回答

    2

    如果我正確讀取,你想 「onlink」 應用CSS?所以當用戶在主頁上時,主圖標是不同的顏色或其他東西。

    <li><%= link_to_unless_current "Home", root_path, :class => "navLinks" do link_to "Home", root_path, :class => "navLinks", :id => "onlink" end %></li>

    • 我知道這是一個老問題,但它可能會證明給別人:)