NAME
rails_nav.rb
SYNOPSIS
encapsulates only the concept of a
"named list of linkys"
and
"how to make one 'em active"
it does not to any htmly stuff for you
USAGE
in a controller
class ApplicationController < ActionController::Base
nav_for :main do |list|
if current_user
list.link(:home, root_path)
list.link(:test, test_path)
end
if current_user.admin?
list.link(:admin, admin_path)
end
end
end
# pass a block to list.link(...){ } to supply logic for when a link is
# active. otherwise a sane default will be built for you.
in a view
<%=
nav_{
ul_(:class => 'nav nav-pills'){
nav_for(:main).each do |link|
li_(:class => (link.active ? :active : :inactive)){
a_(:href => link.href){ link }
}
end
}
}
%>