So doing some more routing around on the lists I saw this advice
> FWIW you
> might want to call the query or execute methods directly on the DA
> connection object if they are supported.
Therefore my db connection object is
ado_db_connection. Modifying my code to the below and calling the query method of the adapter now gives me an 'insufficient priviledges' in my Plone site...Nearly there I feel. Strange as I am logged in as the uberuser...
<ul>
<li tal:define="query here/testquery" tal:repeat="result python:context.ado_db_connection().query(id='IT')">
<span tal:replace="repeat/result/firsname">firstname goes here</span>
</li>
</ul>
ps for completeness
here is the testquery ZSQL which works fine when tested in the ZMI and manually inputting the id variable.
select * from tblEmployees where department = (<dtml-sqlvar id type="string">) order by 'location'
I have 'id' in the argument field
Thanks--On 11/2/07, michael nt milne < michael.milne@gmail.com > wrote:Hi Josef
<ul>
<li tal:define="query here/testquery" tal:repeat="result python:query(id='IT')">
<span tal:replace="repeat/result">firstname goes here</span>
</li>
</ul>
gives the same
> AttributeError: Results instance has no __call__ method
As does
<span tal:replace="repeat/result/firstname">First Name</span>
As does
<span tal:replace="result/firstname">First Name</span>
!
Thanks for your help. Not easy this ZPT!, even when you have read the documentation :-)--On 11/2/07, Josef Meile <jmeile@hotmail.com > wrote:Hi Michael
michael nt milne schrieb:
> yeah I have modified to this
>
> <li tal:define = "query here/testquery"
> tal:repeat="result python:query(id='IT')">
> <span tal:replace="python:repeat['result'].firstname">First
> Name</span>
> </li>
>
> but get this as a result. Thanks for the reply.
>
> Module Products.PTProfiler.ProfilerPatch, line 32, in __patched_call__
> Module Products.PageTemplates.ZRPythonExpr, line 47, in __call__
> - __traceback_info__: query(id='IT')
> Module Python expression "query(id='IT')", line 1, in <expression>
> AttributeError: Results instance has no __call__ method
I suspect that result isn't a dictionary. Why don't you try to print
result instead and see its type? Try this:
<span tal:replace="repeat/result"></span>
You could also try the other sintax for your zpt:
<span tal:replace="repeat/result/firstname">First Name</span>
Regards
Josef
_______________________________________________
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 )
michael
michael