如何在Rails中更改菜单项的类

我有一个菜单导航布局。 我正在使用我在网上找到的模板。 每个菜单项都有一个HTML页面,每个相应页面的li项目类别被称为“已选择”。 它看起来像这样:

 

所以这是在我的application.html.erb文件中。 我的问题是如何根据用户点击的链接以编程方式将每个li项目的类更改为“已选择”? 这可以用Ruby完成,还是需要使用JavaScript?

我想你想要current_page? 辅助方法 – http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-current_page-3F

 
  • "><%= link_to "home", root_path %>
  • ...

    我想你想做的事情如下:

     <%= link_to "portfolio one", portfolio_one_path, class: current_page?(products_path) ? "selected" : "not_selected" %> 

    为您的链接

    控制器和操作名称可用于params哈希中的视图。 因此,如果这些是不同的动作/控制器,您可以执行以下操作:

     
  • ><%= link_to "portfolio one", portfolio_one_path %>
  • 我个人并不是这种方法的忠实粉丝,而是直接将其保留在我的观点中。 通常,我将逻辑推入我的助手并使用它们。