Php 如何获取引用无效字段的Symfony2表单验证错误列表?
由于与验证组件紧密集成的Symfony2表单组件功能非常强大,因此我很难理解如何通过正确引用无效字段在PHP端获得验证错误列表。所谓“reference”,我指的是一些提示,表明我可以进一步获取字段及其ID(如使用Php 如何获取引用无效字段的Symfony2表单验证错误列表?,php,forms,validation,symfony,Php,Forms,Validation,Symfony,由于与验证组件紧密集成的Symfony2表单组件功能非常强大,因此我很难理解如何通过正确引用无效字段在PHP端获得验证错误列表。所谓“reference”,我指的是一些提示,表明我可以进一步获取字段及其ID(如使用$form->get($failedChild)->vars['ID']或其他方法) $form->getErrors()返回错误列表,但不包括对无效字段的任何引用 这显示了类似的情况,但至少在2.3或2.4上,所有错误仍然绑定到主窗体 error\u冒泡选项不会像我最初认为的那样改变
$form->get($failedChild)->vars['ID']
或其他方法)
$form->getErrors()
返回错误列表,但不包括对无效字段的任何引用
这显示了类似的情况,但至少在2.3或2.4上,所有错误仍然绑定到主窗体
error\u冒泡
选项不会像我最初认为的那样改变行为
更新#1 最后,我希望接收所有表单错误的JSON表示,并将其返回给客户端。示例JSON类似于
{
"invalid_field_id": "This field has invalid value"
}
该字段的ID可以通过
$field->vars['ID']
接收,但似乎所有验证错误都是在$form->getErrors()
中返回的,而不是$field->getErrors()
。您可以使用$form->getErrorsAsString()
来获取错误的可读表示形式。这些错误被映射到字段,除非错误不能附加到字段,或者错误冒泡被设置为true 谢谢。这并不完全是我想要的,我补充了问题的最新情况,以进一步澄清我的意图