Ah oui, ça peut-être une solution. En fait dans mes formulaires
id=name car j'utilise les form helpers de Symfony.
J'ai trouvé une solution pour fabriquer mes validateurs à la volée en
fonction du type de réponse attendue (c'est une information contenue
dans la base). Ca marche mais il y a sans doute mieux. Voici le bloc
rajouté dans ma fonction executeUpdate() :


    // Validation
    $bool = false;
    foreach($chapter->getQuerysRelatedByChapterId() as $query) {
         $value = $this->getRequestParameter('status'.$query-
>getId());

         if (($query->getAnswerType() == 'text' || $query-
>getAnswerType() == 'textarea') && $value != "") {
           $myValidator = new sfStringValidator();
           $myValidator->initialize($this->getContext(),array(
             'max'=>255,
             'max_error' => 'This field supports 255 characters
maximum'
            ));
         }
         if (!$myValidator->execute($value,$error)) {
             $this->getRequest()->setError('status'.$query->getId(),
$error);
             $bool = true;
         }
    }
    if ($bool) {
       $this->getRequest()->setError('errorTitle', 'Warning: this form
contains some errors and cannot be submitted');
       $this->forward('chapter', 'show');
    }





On 21 déc, 11:22, Kaa <[EMAIL PROTECTED]> wrote:
> Bonjour,
>
> Je ne sais pas si c'est la bonne solution, je ne suis pas une pro, mais moi 
> quand j'utilise des champs générés dynamiquement, je leur mets juste un id 
> différent, mais le nom reste le même, comme ça je peux les passer au 
> validateur.
>
> J'espère que ça t'aide,
>
> Karen
>
> ----- Message d'origine ----
> De : Xenopus <[EMAIL PROTECTED]>
> À : Symfony-fr <[email protected]>
> Cc : [EMAIL PROTECTED]
> Envoyé le : Vendredi, 21 Décembre 2007, 11h10mn 02s
> Objet : [symfony-fr] Valider un type de champ
>
> Bonjour à tous,
> Je débute sur Symfony et j'arrive pour l'instant à utiliser les
> validateurs via un fichier yml.
> Mon problème est que je ne connais pas a priori le nom des champs qui
> constituront mon formulaire (ils sont générés dynamiquement par une
> requête) mais souhaiterais appliquer la même règle à certains types
>  de
> champs (comme les champs de type fichier par exemple) sans me soucier
> de leur nom. Est-ce possible ?
>
> Merci !
>
>       
> _____________________________________________________________________________
> Ne gardez plus qu'une seule adresse mail ! Copiez vos mails vers Yahoo! 
> Mailhttp://mail.yahoo.fr
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr" 
de Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [EMAIL PROTECTED]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à