我使用的集合类型为symfony 4,我希望对此集合应用计数约束。
我遵循了本教程:https://symfony.com/doc/current/form/form_collections.html
我的想法是将约束直接应用于集合:
$builder
->add('tags', CollectionType::class, [
'entry_type' => Tag::class,
'entry_options' => ['label' => false],
'allow_add' => true,
'by_reference' => false,
'constraints' => [
new AssertCount(['min' => 1, 'max' => 3])
]
])
;
但这不起作用:我没有收到任何错误消息。。。
我还尝试在实体Task
中直接使用这个约束,但没有成功。
那么,如何从应用于集合类型的计数约束中获取错误消息呢?
正如@emix在评论中所说
使用NotNull可以告诉验证器字段不能为空。使用计数验证器可以限制集合的大小(使用最小值/最大值或两者(
为了打印错误,我将参数error_bubbling
设置为CollectionType
的false
。