J Cameron Cooper wrote:

Slobodan Jovcic wrote:

Hi,

I'm trying to pass a list of values between the script and external method. ZPT contains the following:

<tal:block tal:define="whatever python: container.myExtMethod ( container.myScript() )" />

container.myScript() is a Python Script that returns a list of values.
container.myExtMethod() is an External Method expecting that list. However, all it gets is a string representation of the list ( "[]" instead of [] ). How can I pass the list itself?

Btw, hard-coding list in ZPT works fine:
<tal:block tal:define="whatever python: container.myExtMethod( ['a', 'b', 'c' ] )" />


The problem is likely in 'myScript', which you do not show us.

        --jcc

I'd probably just call container.MyScript() as self.MyScript() in the external method. But i'm curious as to why your example doesn't work.
Maybe you could first define the array first with something like ...

<tal:block tal:define="thearray structure? python: container.myScript();
whatever python: container.myExtMethod( thearray )"


DAvid
_______________________________________________
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope-dev )

Reply via email to