Validation Symfony 2.0验证程序,Blank()不';行不通

Validation Symfony 2.0验证程序,Blank()不';行不通,validation,symfony,Validation,Symfony,我是Symfony的新手,遇到以下问题。 我想生成一个没有类的表单。 我想在一个字段上添加一个空()验证器。 见下文 class searchPropertyType extends AbstractType { public function getDefaultOptions(array $options) { $collectionConstraint = new Collection(array( 'keywords' =>

我是Symfony的新手,遇到以下问题。 我想生成一个没有类的表单。 我想在一个字段上添加一个空()验证器。 见下文

class searchPropertyType extends AbstractType
{
    public function getDefaultOptions(array $options)
    {
        $collectionConstraint = new Collection(array(
            'keywords' => new blank()
        ));

        return array('validation_constraint' => $collectionConstraint);
    }


    public function buildForm(FormBuilder $builder, array $options)
    {       
        $builder
            ->add('keywords')
            ->add('neighborhood')
            ->add('price_min')
            ->add('price_max')
            ->add('type')
            ->add('date_from' , 'date')
            ->add('date_to' , 'date')
        ;


    }

    public function getName()
    {
        return 'searchProperty';
    }
}
表单显示正确,但仍然无法发送表单,我收到HTML5警告,说我必须填写此字段

有什么想法吗?我已经为此工作了一整天,这让我发疯


如果您有时间帮忙,非常感谢;-)

要禁用HTML5客户端验证,请将
“必需”=>false
添加到
getDefaultOptions

    public function getDefaultOptions(array $options)
    {
        $collectionConstraint = new Collection(array(
            'keywords' => new blank()
        ));

        return array(
            'validation_constraint' => $collectionConstraint,
            'required' => false
        );
    }
添加
required=>false


希望这会有所帮助。

我可能错了,但是没有必要重复
必需的
选项,因为当您在
getDefaultOptions
中指定它时,它是继承的。
public function buildForm(FormBuilder $builder, array $options) {
        $builder

                ->add('neighborhood','text',array('required' => false,))
                ->add('price_min','text',array('required' => false,))
               ->add('date_from', 'date', array('widget' => 'single_text', 'format' => 'dd MMM yyyy', 'required' => false))
              );
    }