J'ai écrit un validateur personnalisé pour mon champ de schéma comme indiqué dans la documentation ici: http://docs.plone.org/develop/plone/forms/z3c.form.html#form-widget-validatorsl'aide d'un formulaire Widget validateur sur plusieurs champs
Ma question est que si je veux utiliser la même validateur pour quelques champs différents, est-ce possible? Cela ne semble pas fonctionner. par exemple, je voudrais écrire:
# Set conditions for which fields the validator class applies
validator.WidgetValidatorDiscriminators(PhoneNumberValidator, field=IZohoContactForm['phone_number'])
validator.WidgetValidatorDiscriminators(PhoneNumberValidator, field=IZohoContactForm['another_phone_field'])
En utilisant la même validateur sur plusieurs champs devrait fonctionner sans aucun problème. Avez-vous une trace d'erreur? – tisto
Le comportement que je vois est que le deuxième enregistrement écrase le premier ... ie si j'ai le champ A, B et inscrit le validateur pour A et ensuite B (comme dans mon exemple) il se déclenche seulement pour le champ B. Si je échangez l'ordre de l'enregistrement alors inscrivez B puis A, il ne se déclenche que pour le champ A. C'est comme le dernier en gagne ... et non, pas d'erreur. –
Avez-vous besoin d'appeler cela avec une liste de champs auxquels le validateur s'applique? https://github.com/zopefoundation/z3c.form/blob/54d7afe0320cb43b41c17596d844fa9cb21535e4/src/z3c/form/validator.txt#L166 dit "pour définir les discriminateurs" (pluriel). –