I'm creating a custom FormType called IntervalType. My IntervalType will have two fields, start
and end
and will be of type integer. This custom FormType will always be used without data_class
.
I want to add a constraint to guarantee that start
is lower than end
.
How do I use the Symfony\Component\Validator\Constraints\Callback directly in a FormType without data_class
?
Here is my IntervalType, just for reference:
// src/AppBundle/Form/Type/IntervalType.php
namespace AppBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\Form\Extension\Core\Type\IntegerType;
use Symfony\Component\Validator\Constraints\NotBlank;
class TaskType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('start', IntegerType::class, array(
'constraints' => array(
new NotBlank(),
),
))
->add('end', IntegerType::class, array(
'constraints' => array(
new NotBlank(),
),
))
);
}
}
$context->getRoot()
returns the root form, so$data['start']
doesn't exists. – Ciera