/** * @param OptionsResolver $resolver * @throws \Exception */ public function configureOptions(OptionsResolver $resolver) { parent::configureOptions($resolver); $resolver->setRequired(['attribute', 'parent_data']); $resolver->setNormalizer('attribute', function (Options $options, $value) { return self::normalizeVariantAttribute($value); }); $resolver->setNormalizer('parent_data', function (Options $options, $value) { return self::normalizeParentData($options, $value); }); $resolver->setNormalizer('constraints', function (Options $options, $constraints) { $constraints[] = new UniqueVariant(['attribute' => $options['attribute'], 'parentData' => $options['parent_data']]); return $constraints; }); }
/** * @inheritdoc */ public function configureOptions(OptionsResolver $resolver) { parent::configureOptions($resolver); $resolver->setDefault('attr', ['novalidate' => 'novalidate']); }