繁体   English   中英

动态表单类约束不起作用-Symfony 2.7

[英]Dynamic form class constraints doesn't work - Symfony 2.7

这是我的表单类,当我要创建动态表单约束不起作用时,我正在向该表单提交请求数据,以进行“类型”验证工作。 含义约束不适用于动态形式。

      class NotesType extends AbstractType
        {
            /**
             * @param FormBuilderInterface $builder
             * @param array $options
             */
            public function buildForm(FormBuilderInterface $builder, array $options)
            {
                $validation_group = array('groups' => array('note'));

                $builder->add('type', 'text', array(
                    'required' => true,
                    'constraints' => array(new NotBlank($validation_group))
                ));

                $builder->addEventListener(
                    FormEvents::SUBMIT,
                    function (FormEvent $event) {
                        $form = $event->getForm();

                        $formData = $form->getExtraData();

                        if ($formData['type'] === 'note') {
                            $form->add('title', 'text', array(
                                'required' => true,
                                'constraints' => array(
                                    new NotBlank()
                                )))
                                ->add('description', 'text', array(
                                    'required' => true,
                                    'constraints' => array(
                                       new NotBlank()

                                    )));
                        } 

             public function configureOptions(OptionsResolver $resolver)
              {
                    $resolver->setDefaults(array(
                     'data_class' => 'NotesManagerBundle\Entity\Notes',
                     'csrf_protection' => false,
                     'allow_extra_fields' => true,
                      'validation_groups' => array('note')
                    ));
             }

}

验证组是否存在此问题?

是的,您应该在titledescription字段中添加适当的验证组事件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM