Forms Symfony 4:从应用于集合类型的计数约束获取错误消息
我使用的集合类型为symfony 4,我希望对此集合应用计数约束 我遵循了本教程: 我的想法是直接在集合上应用约束:Forms Symfony 4:从应用于集合类型的计数约束获取错误消息,forms,symfony,symfony4,Forms,Symfony,Symfony4,我使用的集合类型为symfony 4,我希望对此集合应用计数约束 我遵循了本教程: 我的想法是直接在集合上应用约束: $builder ->add('tags', CollectionType::class, [ 'entry_type' => Tag::class, 'entry_options' => ['label' => false], 'allow_add' => true, 'by_
$builder
->add('tags', CollectionType::class, [
'entry_type' => Tag::class,
'entry_options' => ['label' => false],
'allow_add' => true,
'by_reference' => false,
'constraints' => [
new Assert\Count(['min' => 1, 'max' => 3])
]
])
;
但这不起作用:我没有收到任何错误消息
我还尝试在实体任务
中直接使用此约束,但没有成功
那么,如何从应用于集合类型的计数约束中获取错误消息呢 正如@emix在评论中所说
使用NotNull,您告诉验证器字段不能为空。使用计数验证器可以限制集合的大小(使用最小值/最大值或两者都使用)
为了打印错误,我将
CollectionType
的error\u bubbing
参数设置为false
,您还应该添加NotNull
验证器来检查它是否为空。这是出于设计。但我如何测试我是否只需要此集合的三个标记?抱歉,我不理解您的问题。我的意思是,通过NotNull
约束,我可以测试集合中是否至少有一个标记。但是我怎么能设定一个限制呢?我希望避免用户放入多个标记
s。使用NotNull,您可以告诉验证器字段不能为空。使用计数验证器可以限制集合的大小(使用最小值/最大值或两者都使用)