Thanks Leo, this is very helpful. It should probably be in a HOWTO somewhere. :)
> -----Original Message----- > From: Leonardo Rochael Almeida [mailto:[EMAIL PROTECTED]] > > On Tue, 2003-01-14 at 01:01, Bjorn Stabell wrote: > > > Bjorn Stabell wrote: > > > > I would like > > > > <dtml-var content> > > <dtml-with content>... > > <dtml-if content> > > > > to call different functions. The first renders the object, > the second > > returns a mapping of the content's attributes/properties, the third > > checks for "trueness" of the content. Rendering a content > could be an > > expensive operation and I don't want to do it when doing > dtml-with and > > dtml-if. > > > you can do that by having your object be non-callable (or > returning self on __call__) and implementing __str__ where > you can have access to the REQUEST thru self.REQUEST. > <dtml-with content> works as expected because you're getting > the object itself. To make <dtml-if content> work you should > implement __len__ (if your object implements sequence or > mapping, which it probably doesn't) or __nonzero__. Read the > python docs for details on the implementation of these methods. > > Cheers, Leo > > -- > Ideas don't stay in some minds very long because they don't > like solitary confinement. _______________________________________________ Zope-Dev maillist - [EMAIL PROTECTED] http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )