[Checkins] SVN: z3c.formjs/trunk/src/z3c/formjs/j Stabilized
field/widget lookup.
Stephan Richter
srichter at cosmos.phy.tufts.edu
Fri Jul 6 20:51:56 EDT 2007
Log message for revision 77548:
Stabilized field/widget lookup.
Changed:
U z3c.formjs/trunk/src/z3c/formjs/jqueryrenderer.py
U z3c.formjs/trunk/src/z3c/formjs/jsvalidator.py
U z3c.formjs/trunk/src/z3c/formjs/jsvalidator.txt
-=-
Modified: z3c.formjs/trunk/src/z3c/formjs/jqueryrenderer.py
===================================================================
--- z3c.formjs/trunk/src/z3c/formjs/jqueryrenderer.py 2007-07-06 22:43:31 UTC (rev 77547)
+++ z3c.formjs/trunk/src/z3c/formjs/jqueryrenderer.py 2007-07-07 00:51:55 UTC (rev 77548)
@@ -98,8 +98,8 @@
# build js expression for extracting widget value
valueString = '$("#%s").val()' % widget.id
# build a js expression that joins valueString expression
- queryString = '"?widget-id=%s&%s=" + %s' % (
- widget.id, widget.name, valueString)
+ queryString = '"?widget-name=%s&%s=" + %s' % (
+ widget.__name__, widget.name, valueString)
# build a js expression that joins form url, validate path, and query
# string
ajaxURL = '"'+form.request.getURL() + '/validate" + ' + queryString
Modified: z3c.formjs/trunk/src/z3c/formjs/jsvalidator.py
===================================================================
--- z3c.formjs/trunk/src/z3c/formjs/jsvalidator.py 2007-07-06 22:43:31 UTC (rev 77547)
+++ z3c.formjs/trunk/src/z3c/formjs/jsvalidator.py 2007-07-07 00:51:55 UTC (rev 77548)
@@ -25,27 +25,25 @@
from z3c.formjs import interfaces
-
+# Traverser Plugin to the ``validate()`` method of the ``IAJAXValidator``
ValidateTraverser = SingleAttributeTraverserPlugin('validate')
class BaseValidator(object):
zope.interface.implements(interfaces.IAJAXValidator, IPluggableTraverser)
- # See IAJAXValidator
+ # See ``interfaces.IAJAXValidator``
ValidationScript = None
def _validate(self):
- # XXX: Hard coded. Need a better approach.
- widgetID = self.request.get('widget-id')
- fieldName = widgetID.replace('form-widgets-','')
- self.fields = self.fields.select(fieldName)
+ shortName = self.request.get('widget-name')
+ self.fields = self.fields.select(shortName)
self.updateWidgets()
return self.widgets.extract()
def publishTraverse(self, request, name):
# Act like a pluggable traverser.
- for traverser in zope.component.subscribers((self, request),
- ITraverserPlugin):
+ for traverser in zope.component.subscribers(
+ (self, request), ITraverserPlugin):
try:
return traverser.publishTraverse(request, name)
except NotFound:
Modified: z3c.formjs/trunk/src/z3c/formjs/jsvalidator.txt
===================================================================
--- z3c.formjs/trunk/src/z3c/formjs/jsvalidator.txt 2007-07-06 22:43:31 UTC (rev 77547)
+++ z3c.formjs/trunk/src/z3c/formjs/jsvalidator.txt 2007-07-07 00:51:55 UTC (rev 77548)
@@ -53,7 +53,7 @@
>>> print edit.fieldValidator(
... None, jsaction.WidgetSelector(edit.widgets['zip']), request)
$.get("http://127.0.0.1/validate" +
- "?widget-id=form-widgets-zip&form.widgets.zip=" +
+ "?widget-name=zip&form.widgets.zip=" +
$("#form-widgets-zip").val(),
function(data){
alert(data);
@@ -66,14 +66,14 @@
... (jsinterfaces.IAJAXValidator, IPublisherRequest))
>>> from z3c.traverser.traverser import PluggableTraverser
- >>> request = TestRequest(form={'widget-id' : 'form-widgets-zip',
+ >>> request = TestRequest(form={'widget-name' : 'zip',
... 'form.widgets.zip' : u'29132'})
>>> edit = AddressEditForm(None, request)
>>> edit.update()
>>> PluggableTraverser(edit, request).publishTraverse(request, 'validate')()
u''
- >>> request = TestRequest(form={'widget-id':'form-widgets-zip',
+ >>> request = TestRequest(form={'widget-name': 'zip',
... 'form.widgets.zip':'notazipcode'})
>>> edit = AddressEditForm(None, request)
>>> edit.update()
More information about the Checkins
mailing list