我正在基于Symfony 2.7开发一个项目。
我为自定义表单类型添加了以下功能:
public function setDefaultOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(
[
'error_bubbling' => true
]
);
}
...,并且在加载表单时,我现在得到以下FatalErrorException:
编译错误:的声明 MyCompany \ AppBundle \ Form \ ContactType :: setDefaultOptions()必须为 与...兼容 Symfony \ Component \ Form \ FormTypeInterface :: setDefaultOptions(Symfony \ Component \ OptionsResolver \ OptionsResolverInterface $ resolver)
浏览FormTypeInterface::setDefaultOptions()
,看来我符合方法签名。我究竟做错了什么?
答案 0 :(得分:2)
您可以正确输入$resolver
,它应该是OptionsResolverInterface
,而不是OptionsResolver
。
或者,最好将setDefaultOptions(OptionsResolverInterface $resolver)
替换为configureOptions(OptionsResolver $resolver)
,因为Symfony 2.7 source中已弃用了
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(
[
'error_bubbling' => true
]
);
}