[Zope3-Users] Automatic schema field sanitation?

Carsten Senger senger at rehfisch.de
Tue Dec 2 18:57:34 EST 2008


Hi Dennis,

Dennis Noordsij schrieb:

> I would like to define a custom type inheriting from
> zope.schema.TextLine, which in addition to having a built-in constraint
> method also sanitizes the input.
> 
> For example suppose you need to store codes of the kind: 3 letters,
> space, 3 numbers.
> 
> The constraint uses a regexp, and this works fine.
> 
> However it would be nice if I could also automatically capitalize the
> letters, such that "abc 123" is stored as "ABC 123" which is the
> presentation that should be used everywhere. Being able to do this
> automatically, just like the validation, would completely remove the
> need to remember to sanitize on input/output throughout the rest of the
> system.
> 
> What would be the best way to implement this, ideally without needing to
> modify any of the standard zope.interface/zope.schema code?

IIRC invariants can change the passed data even though they are used 
nearly exclusive for cross field validation.

..Carsten



More information about the Zope3-users mailing list