Passing parameters to obj found by path expressions in ZPT?
Jeff Kowalczyk
jtk at yahoo.com
Fri Nov 1 13:35:57 EST 2002
Is there a way to pass parameters to the methods on objects referenced by path
expressions? I'm trying to streamline an interactive formulator template that will retain
the values between postbacks.
<html><head><title>The title</title></head><body>
<span tal:replace="structure request/form"> </span>
<form name="sign_in" method="post" action="sign_in">
<tal:block define="global formErrors python:container.check_form('login')" />
<div tal:repeat="repeatform python: here.objectValues(['Formulator Form'])">
<h1 tal:content="repeatform/title"></h1>
<div tal:repeat="repeatfield repeatform/get_fields">
<span tal:replace="structure repeatfield/title" />:<br>
<span tal:condition="python:not request.has_key('field_password')"
tal:replace="structure repeatfield/render" /><br>
<span tal:condition="python:request.has_key('field_password')"
tal:replace="structure repeatfield/render_from_request" /><br>
<span tal:condition="python:request.REQUEST_METHOD == 'POST'"
tal:content="structure python:formErrors[repeatfield]" tal:on-error="string:"
style="color:red">error goes here</span>
</div>
</div>
<p><input type="submit" value="Submit"></p>
</form></body></html>
Error Type: TALESError
Error Value: exceptions.TypeError on render_from_request() takes exactly 2 arguments (1
given) in "standard:'repeatfield/render_from_request'", at line 16, column 7
A python expression should work better for parameters, but the object ids would be
hardcoded.
span tal:replace="structure
python:container.myform.myfield.render_from_request(here.REQUEST)" />
But I can't monkey around with a getattr() for the form and field until I learn how to
reference the repeat variables 'repeatfield' and 'repeatform' within python expressions,
how do I do that?
Any ideas on any of these fronts would be greatly appreciated. Thanks.
More information about the Python-list
mailing list