Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony 5 Uniquentity表单验证约束_Php_Symfony_Symfony5 - Fatal编程技术网

Php Symfony 5 Uniquentity表单验证约束

Php Symfony 5 Uniquentity表单验证约束,php,symfony,symfony5,Php,Symfony,Symfony5,我使用Symfony表单来创建和验证我的表单,我没有在实体中使用Assert,而是在表单中使用约束。使用存在问题的Uniquentity时,无法将实体或存储库与约束关联 我的表单类型 必须对实体(而不是字段)应用Uniquentity。但您可以在setDefaults中使用它: public function configureOptions(OptionsResolver $resolver) { $resolver->setDefaults([ 'constra

我使用Symfony表单来创建和验证我的表单,我没有在实体中使用Assert,而是在表单中使用约束。使用存在问题的Uniquentity时,无法将实体或存储库与约束关联

我的表单类型


必须对实体(而不是字段)应用Uniquentity。但您可以在setDefaults中使用它:

public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults([
        'constraints' => [
            new UniqueEntity([
                'entityClass' => Business::class,
                'fields' => 'title',
            ]),
        ],

此外,您的表单字段似乎应该命名为“title”,而不是“business\u title”。

您的表单中有一个TextType,约束需要一个实体,因此使用EntityType可能会更好。您可以尝试使用DataTransformer或form events来获取实体对象,也可以编写一个自定义约束,使用条令检查具有该标题的业务是否已经存在