从Symfony 2.4升级到2.5后,我的表单验证器约束不再起作用了。
我得到:可捕获的致命错误:参数1传递给Symfony \ Component \ Form \ Extension \ Validator \ Type \ FormTypeValidatorExtension :: __ construct()必须是Symfony \ Component \ Validator \ ValidatorInterface的实例,Symfony \ Component的实例\ Validator \ Validator \ RecursiveValidator给定,在第36行的vendor / symfony / symfony / src / Symfony / Component / Form / Extension / Validator / Type / FormTypeValidatorExtension.php中定义
有人建议如何解决这个问题吗?
答案 0 :(得分:6)
尝试在config.yml中设置验证api。
来自UPGRADE-2.5.md的评论https://github.com/symfony/symfony/blob/master/UPGRADE-2.5.md
“Symfony\Component\Validator\Validator
中的验证引擎已被替换
在Symfony\Component\Validator\Validator\RecursiveValidator
中使用新的。
通过该更改,已弃用了几个将被删除的类
Symfony 3.0。此外,验证器的API略有变化。更多
有关详细信息,请参阅UPGRADE-3.0。
您可以通过新的“api”条目选择所需的API 应用程序/配置/ config.yml:“
framework:
validation:
enabled: true
api: auto