symfony2 utilisant des groupes de validation sous forme
J'ai une Entité avec une propriété:
/**
* @var string $name
*
* @Assert\NotBlank(groups={"foobar"})
* @ORM\Column(name="name", type="string", length=225, nullable=false)
*/
private $name;
La Forme:
class MyType extends AbstractType
{
public function buildForm(FormBuilder $builder, array $options)
{
$builder->add('name');
}
public function getDefaultOptions(array $options)
{
return array(
'data_class' => '...',
'validation_group' => array('foobar'),
);
}
public function getName()
{
...
}
}
Dans le Contrôleur, je la lie de la Demande et de l'appel $form->isValid()
Mais comment définir la validation_group?
source d'informationauteur Uwe | 2011-09-06
Vous devez vous connecter pour publier un commentaire.
Lors de la construction de la forme dans le contrôleur, ajoutez un "validation_groups date' élément dans le tableau d'options:
Il est décrit dans la page des formulaires de la symfony2 livre: http://symfony.com/doc/current/book/forms.html#validation-groups
J'ai eu exactement le même problème. Je l'ai résolu de cette façon ...
J'espère que ça aide!
De l'intérieur de votre FormType classe, vous pouvez définir les groupes de validation associées à ce type de configuration de vos options par défaut:
Pour moi, sur symfony 2.1, je l'ai résolu en ajoutant "par Défaut" dans validation_groups date comme:
J'ai fait un petit post de blog liées à ce problème: http://marcjuch.li/blog/2013/04/21/how-to-use-validation-groups-in-symfony/
Dans ce post, je vais vous montrer comment utiliser les groupes de validation dans symfony avec l'exemple d'un formulaire de commande qui devrait offrir la possibilité d'utiliser une facturation séparée et adresses de livraison. Cela inclut 3 étapes:
case de valeur dans le formulaire soumis
pas sélectionné
Vous pouvez également définir des groupes de validation de façon dynamique: