-----Original Message----- From: Darran Edmundson [mailto:Darran.Edmundson@anu.edu.au] Sent: Thursday, September 23, 1999 11:03 AM To: zope@zope.org Subject: [Zope] Passing variables to a DTML method ...
Could someone explain how to pass variables to a DTML method? For example, if I have the following in a DTML method:
<dtml-call "REQUEST.set('testvar', 'value')"> <dtml-var "calledmethod(REQUEST)">
Due to some hysterical, I mean historical reasons you cannot simply "call" a DTML Method unless you pass in a few things. A DTML object needs a context in which to render itself. This context can be passed in one of three ways, as a 'client' object, a 'REQUEST' mapping (any mapping) or as keyword arguments to the method. For example: <dtml-var "calledmethod(_.None, _, testvar=value)"> is one way to do what your looking for. _.None is the client (None), _ is the current namespace stack (thus the method will render itself in the current context) and 'testvar=value' is a keyword argument for your variable. -Michel