[Zope] How to pass a list of 2 values each to dtml
Stephan Richter
srichter@cbu.edu
Sat, 22 Apr 2000 12:53:40 -0500
>Now I want to call a method
> foo(url, name)
>how can I split the passed strings in urllist into 2 parts and assign them
>to variables in dtml I can pass to foo ?
>or is there a way to pass a tuple or list in the form directly?
The beauty of a ":list" flag in the value attribute is that Zope will
return a Python list. So all you got to say is (untested):
<dtml-with urllist>
<dtml-let url=sequence-item>
<dtml-call foo>
</dtml-let>
</dtml-with>
In foo you can then refer to url.
Another way (but more work) would be:
<dtml-let url1=urllist[0]
url2=urllist[1]>
<dtml-call foo>
</dtml-let>
or
<dtml-call "REQUEST('url1', urllist[0])">
<dtml-call "REQUEST('url2', urllist[1])">
But notice that I assume in the last 2 examples that the list has two
elements. You would have to write some if statements tomake it work right,
so it wont bail on you, in case you have 1 or no url passed.
Regards,
Stephan
--
Stephan Richter - (901) 573-3308 - srichter@cbu.edu
CBU - Physics & Chemistry; Framework Web - Web Design & Development
PGP Key: 735E C61E 5C64 F430 4F9C 798E DCA2 07E3 E42B 5391