繁体   English   中英

在表单类型步骤Symfony中禁用对自定义字段的断言

[英]Disable assert to custom field in form type step Symfony

我已经在我的实体中配置了断言。 我创建了两种表单类型。 首先,我有nameurl 在第二个中我有description

/*
*@Assert/NotBlank()
*/
$description;

当我尝试提交第一个表单时,由于$description为空白,因此未通过验证。

但是以第一种形式,没有描述字段。

您正在寻找的是验证组( http://symfony.com/doc/current/book/validation.html#validation-groupshttp://symfony.com/doc/current/book/forms.html#validation -groups )。

基本上,对于您的情况,您需要定义两个验证组,并在表单类型上设置每个验证组。

您的实体

/**
 * @Assert\NotBlank(groups={"FirstForm"})
 */
private $name;

/**
 * @Assert\NotBlank(groups={"FirstForm"})
 */
private $url;

/**
 * @Assert\NotBlank(groups={"SecondForm"})
 */
private $description;

FirstFormType

public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults(array(
        'validation_groups' => ['Default', 'FirstForm']
    ));
}

SecondFormType

public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults(array(
        'validation_groups' => ['Default', 'SecondForm']
    ));
}

暂无
暂无

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

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