Generiert ein Hierarschiches Navigationsmenu. Statisch oder mit Ajax, wie es beliebt.
Daten können programmatisch erstellt werden oder in der Datenbank liegen.
Angenfangen hat es mit der Betrachtung von MenuEngine, was jedoch nicht weiter entwickelt wurde und nicht so ganz meinen Vorstellungen entsprach.
Was wäre in einem Helper zu schreiben?
def mainmenu
root = MenuItem.new(:text=>"Root", :controller=>"frontpage", :action => "welcome")
root.items << MenuItem.new(:text => "Child", :controller=>"frontpage", :action =>"contact", :menuimage => "/images/contact.png")
return [root]
end
im View:
menu :mainmenu
oder
menu :mainmenu, :currentcontroller=>controller.controller_name, :currentaction => controller.action_name
oder mit Ajax als Linkreferenz (vom MenuItem überschreibbar)
menu :mainmenu, :ajaxupdate => “pagecontent”
Ausprobieren und freuen
CSS ebenfalls beliebig stylebar!
Subversion: http://svn.sjoker.net/svn/railsplugins/trunk/menu_system/