Symfony2 - Précisions sur les callbacks du validateur

32 views
Skip to first unread message

JIS

unread,
Jul 7, 2011, 5:15:16 PM7/7/11
to Symfony-fr
Bonjour,

Je bloque depuis quelques heures sur les callbacks du validateur.
Je tiens à signaler que je n'ai eu aucun problème à les faire
fonctionner grâce à la doc
http://symfony.com/doc/current/reference/constraints/Callback.html

Mon soucis est le suivant: Les callbacks de validateur se trouvent
dans les classes Entities, et en dehors du "Validator\ExecutionContext
$context " passé en paramètre au callback, rien ne permet d’interagir
avec le service container.

Par exemple dans une fonction de callback j'aimerais bien interroger
ma base de données pour savoir si le tel ou tel valeur est déjà
utilisée.

Merci d'avance à ceux qui pourront m'éclairer.

winzou

unread,
Jul 18, 2011, 12:44:54 AM7/18/11
to symfo...@googlegroups.com
Salut,

J'arrive un peu tard, mais il existe deja un validateur qui permet de verifier l'unicite, UniqueValidator, cf https://github.com/symfony/symfony/tree/master/src/Symfony/Bridge/Doctrine/Validator/Constraints

Sinon ton cas n'est pas possible, une entite ne peut pas avoir acces au service container ca n'a pas de sens.

JIS

unread,
Jul 21, 2011, 2:55:16 AM7/21/11
to symfo...@googlegroups.com
Ca y est, depuis j'ai bien cerné la différence entre les callbacks et les contraintes du validateur.
J'ai créé mes propres constraintes custom, définies en tant que service pour avoir accès au service container.
Je ne savais pas qu'un validateur d'entité unique existait, je ne le trouve pas dans la doc. Mais je vais me pencher dessus, ça m'évitera de faire mes propres contraintes "Unique".

Merci
Reply all
Reply to author
Forward
0 new messages