DTML Problem (from the newbie "hair ripper" category)
Greetings, I have created a custom Zclass called "Category." This object is based on the "objectManager" template. Essentially this object is a container with a few properties attached; "navigation_name" and "description." Essentially, the gist of this is to create a navigation menu with a <dtml-in> loop that displays all of the Category('s) in a given directory. However, I want the property "navigation_name" to show up as the hyperlink text. Does this make sense? So, if I simply call the <dtml-in "objectValues(['Category'])"> and then print the name with <dtml-var navigation_name>, everything works fine!! Here is the proverbial rub. If I want to *test* for the presence of "navigation_name" so I can print "title_or_id" if it's not defined, Zope simply skips the "navigation_name" property. It's like it always evaluates to false! Example for "left navigation" dtml method: <dtml-in "objectValues(['Category'])"> <dtml-if "hasProperty('navigation_name')"> <dtml-var navigation_name> <dtml-else> <dtml-var title_or_id> </dtml-if> </dtml-in> Okay, I think to myself "self, maybe acquisition is getting in the way," so I try: <dtml-in "objectValues(['Category'])"> <dtml-with sequence-item> <dtml-if "hasProperty('navigation_name')"> <dtml-var navigation_name> <dtml-else> <dtml-var title_or_id> </dtml-if> </dtml-with> </dtml-in> Doesn't work! Could this have something to do with the definition of my own Zclass? Do I have to read into the property sheet specifically? Is there a command for that? I took the example from the excellent "Breadcrumb Navigation Trail Howto" and that works fine, as long as I use a supplied Zope object (like "folder"). As soon as I use my own ZClasses, this breaks. (I'd like to get my "navigation_name" into the breadcrumbs as well. Thanks in advance, -Darin Lee
participants (1)
-
Darin Lee