At 15:54 +0100 3/4/02, hans wrote:
<dtml-call "REQUEST.set( 'yourname', yourvalue)">
Yes, I have a number of such calls in the DTMLMethod I'm attempting to call from the python product.
I know this must seem like a dumb question; but can you tell me how to pass an empty REQUEST object in the call, so the DTMLMethod can set and make use of these variables?
__call__(myDTMLMethod, REQUEST???)
NOTE: better ask zope@zope.org, so all member may profit :-)
My mistake. Sorry all. I'll make sure to use "reply to all" in future.
a) REQUEST is an object that seemingly behaves just like a python dictionary b) the __call__-method of DTMLMethod has REQUEST={}, so by default if no 2nd parameter is given, it is empty. Note that DTMLMethods are usually interpreted in the context (=namespace) of their caller. c) the third parameter **kw is a sequence of keyword parameters.
So does that mean I need to pass an empty dictionary as the second parameter to _call_ so that my DTMLMethod will have a REQUEST object that it can start filling with variables using <dtml-call "REQUEST.set( 'yourname', yourvalue)"> ? Could you provide the exact syntax I need to use in _call_ ? Whatever I try, I always get the error "global name 'REQUEST' is not defined"? Presumably because the DTMLMethod I'm calling is trying to set variables in a REQUEST object; but it's not getting one, and I still don't understand how to provide this. I'll also need to provide some other variables to the DTMLMethod. I guess I need to use **kw for that? Again the exact syntax I need to use, by example, would be appreciated. The end of the traceback is as following: (Object: REQUEST.set('newsMgr', id)) (Info : REQUEST) File <string>, line 2, in f NameError: (see above) thanks geoff