= menu_builder A simple helper + controller macro to make easier to highligh menu items based on actions (instead of urls) == Instalation gem "menu_builder" == Usage === Controller class DashboardController < ApplicationController menu_item :mydashboard ... end You can also change to menu item at action level instead of class level. class DashboardController < ApplicationController menu_item :mydashboard def prices menu_item :prices ... end end And you can prepend or append just one item to the collection class DashboardController < ApplicationController menu_item :mydashboard def prices append_menu_item :prices ... end end === View ==== ERB code <%= menu(:id=>"mainMenu", :class=>"menu") do |m| %> <%= m.account 'Account', account_path, :style => 'float: right' %> <%= m.users 'Users', users_path, :style => 'float: right' %> <%= m.mydashboard 'Dashboard', '/' %> <%= m.projects 'Projects', projects_path %> <% end %> ==== HTML Result
==== Blocks for content You can also pass blocks: <%= menu do |m| %> <% m.account account_path do %> <%= image_tag "icon.jpg" /> Accounts <% end %> <%= m.users "Users", users_path %> <%= m.posts "Posts", posts_path %> <% end %>