Php Symfony 5 Uniquentity表单验证约束
我使用Symfony表单来创建和验证我的表单,我没有在实体中使用Assert,而是在表单中使用约束。使用存在问题的Uniquentity时,无法将实体或存储库与约束关联 我的表单类型Php Symfony 5 Uniquentity表单验证约束,php,symfony,symfony5,Php,Symfony,Symfony5,我使用Symfony表单来创建和验证我的表单,我没有在实体中使用Assert,而是在表单中使用约束。使用存在问题的Uniquentity时,无法将实体或存储库与约束关联 我的表单类型 必须对实体(而不是字段)应用Uniquentity。但您可以在setDefaults中使用它: public function configureOptions(OptionsResolver $resolver) { $resolver->setDefaults([ 'constra
必须对实体(而不是字段)应用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来获取实体对象,也可以编写一个自定义约束,使用条令检查具有该标题的业务是否已经存在