[Checkins] SVN: z3c.form/trunk/src/z3c/form/converter. A named
field will tell it's name:
Adam Groszer
agroszer at gmail.com
Wed Jan 23 11:11:36 EST 2008
Log message for revision 83114:
A named field will tell it's name:
TypeError: Field ``foobar`` must provide ``IFromUnicode``.
Changed:
U z3c.form/trunk/src/z3c/form/converter.py
U z3c.form/trunk/src/z3c/form/converter.txt
-=-
Modified: z3c.form/trunk/src/z3c/form/converter.py
===================================================================
--- z3c.form/trunk/src/z3c/form/converter.py 2008-01-23 16:08:00 UTC (rev 83113)
+++ z3c.form/trunk/src/z3c/form/converter.py 2008-01-23 16:11:36 UTC (rev 83114)
@@ -64,7 +64,11 @@
def __init__(self, field, widget):
super(FieldDataConverter, self).__init__(field, widget)
if not zope.schema.interfaces.IFromUnicode.providedBy(field):
- raise TypeError('Field must provide ``IFromUnicode``.')
+ if field.__name__:
+ raise TypeError('Field ``%s`` must provide ``IFromUnicode``.' \
+ % field.__name__)
+ else:
+ raise TypeError('Field must provide ``IFromUnicode``.')
@zope.component.adapter(interfaces.IFieldWidget)
Modified: z3c.form/trunk/src/z3c/form/converter.txt
===================================================================
--- z3c.form/trunk/src/z3c/form/converter.txt 2008-01-23 16:08:00 UTC (rev 83113)
+++ z3c.form/trunk/src/z3c/form/converter.txt 2008-01-23 16:11:36 UTC (rev 83114)
@@ -36,6 +36,14 @@
...
TypeError: Field must provide ``IFromUnicode``.
+A named field will tell it's name:
+
+ >>> converter.FieldDataConverter(zope.schema.Date(__name__="foobar"), text)
+ Traceback (most recent call last):
+ ...
+ TypeError: Field ``foobar`` must provide ``IFromUnicode``.
+
+
However, the ``FieldDataConverter`` is registered for ``IField``, since many
fields (like ``Decimal``) for which we want to create custom converters
provide ``IFromUnicode`` more specifically than their characterizing interface
More information about the Checkins
mailing list