No good reason. The logic can be moved in the constructor but need to be tested to make sure nothing breaks.
On Tuesday, 11 September 2012 10:29:02 UTC-5, Anthony wrote: > > Looks like MENU doesn't generate a DOM structure until its .serialize() > method is called. You could do: > > mmenu = mmenu.serialize(mmenu.data) > mmenu.elements('a') > > I'm not sure why it was done this way as opposed to generating the DOM > upon initialization. Massimo? > > Anthony > > On Tuesday, September 11, 2012 10:49:59 AM UTC-4, amphisia pui wrote: >> >> Hi to all >> >> I want to use the html helper MENU to have in the page footer a menu >> totally exploded without sliding items. >> I changed the css classes and everything looks fine but I don't want the >> first level menu items to be clickable >> >> so the first thing I tried was the server-side parsing to remove >> unnecessary tags but in a web2py shell I got >> >> mlist = ... well formatted web2py menu list >> >> In [40]: mmenu = MENU(mlist) >> >> In [41]: mitems = mmenu.elements('a') >> >> --------------------------------------------------------------------------- >> AttributeError Traceback (most recent call >> last) >> /opt/web2py/applications/happy/models/menu.py in <module>() >> ----> 1 mmenu.elements('a') >> >> /opt/web2py/gluon/html.pyc in elements(self, *args, **kargs) >> 1079 # loop the components >> >> 1080 if find_text or find_components: >> -> 1081 for i, c in enumerate(self.components): >> 1082 if check and find_text and isinstance(c, str) and >> \ >> 1083 ((is_regex and find_text.search(c)) or >> (str(find_text) in c)): >> >> AttributeError: 'MENU' object has no attribute 'components' >> >> Is MENU helper supposed to work with sever side DOM parsing? Is web2py >> ipython Shell fault? >> Can you suggest something better to try to have first level items menu >> seem like simple labels? >> >> Thanks to all >> >> AP >> >> Sys info >> Python 2.7.3 >> web2py 2.0.8 >> >> --