[Zope] Passing parameters into DTML methods
   
    Phillip J. Eby
     
    pje@telecommunity.com
       
    Mon, 28 Jun 1999 20:05:34 -0500
    
    
  
Try:
<!--#call "updateValue(_.None,_,newval=100)"-->
The problem is that when you call a DocumentTemplate without parameters,
the system sees it's a DocumentTemplate and passes through the current
namespace.  If you call it with parameters, the system in effect assumes
you know what you're doing and doesn't mess with the parameters you're
passing.  Normally, DocumentTemplates take two positional arguments before
the keyword arguments - specifically, a 'client' and a 'namespace'.  '_' is
the current DTML namespace, that's why it's passed in second.  _.None as
the first parameter skips over the 'client' parameter, which isn't needed.
At 07:47 PM 6/28/99 -0500, Albert Boulanger wrote:
>I have the following dtml code piece (using Zope 1.10.2):
>
>
><!--#call "updateValue(newval=100)"-->
>
>updateValue is a dtml method which looks like:
>
>
><!--#if "hasProperty('lastValue')"-->
><!--#call "manage_changeProperties(lastValue=newval)"-->
><!--#else-->
><!--#call
>"manage_addProperty('lastValue',newval,getPropertyType('default'))"-->
><!--#/if-->
>
>When I view the dtml method, foo, with the call <!--#call
>"updateValue(newval=100)"-->
>I get the error below . Interestingly, if I change the method above to: