【发布时间】:2026-02-11 11:35:01
【问题描述】:
我已将表单错误应用于表单集合字段(自定义字段集)。
if ($this->isFieldset($form, $field) && !empty($error)) {
$form->get($field)->addError(
new FormError(
ucfirst(str_replace('_', ' ', $field)) . ' is invalid.')
);
}
表单应用了错误但仍标记为有效?
正如您在控制器中看到的那样,在调用 isValid 之前,表单在 about_you 子项上存在错误?
有什么建议吗?
【问题讨论】:
-
您是在调用
$form->isValid()之前还是之后添加了数组? -
是的,我在第一次创建表单时添加它们(在一个被覆盖的形式因子类中,从 Redis 中提取错误并将它们添加回表单)。
-
您是否尝试过为自定义字段集编写测试,或者只是从中创建了一个表单,然后在控制器中调用 getErrors()/isValid()?
标签: php validation symfony symfony-forms