English spoken conference

Symfony 5: The Fast Track

A new book to learn about developing modern Symfony 5 applications.

Support this project

WARNING: You are browsing the documentation for Symfony 2.8 which is not maintained anymore. Consider upgrading your projects to Symfony 5.0.

How to Define the Validation Groups to Use

How to Define the Validation Groups to Use

Validation Groups

If your object takes advantage of validation groups, you'll need to specify which validation group(s) your form should use:

$form = $this->createFormBuilder($user, array(
    'validation_groups' => array('registration'),
))->add(...);

New in version 2.7: The configureOptions() method was introduced in Symfony 2.7. Previously, the method was called setDefaultOptions().

If you're creating form classes (a good practice), then you'll need to add the following to the configureOptions() method:

1
2
3
4
5
6
7
8
use Symfony\Component\OptionsResolver\OptionsResolver;

public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults(array(
        'validation_groups' => array('registration'),
    ));
}

In both of these cases, only the registration validation group will be used to validate the underlying object. To apply the registration group and all constraints that are not in a group, use:

'validation_groups' => array('Default', 'registration')

This work, including the code samples, is licensed under a Creative Commons BY-SA 3.0 license.