Forms 未定义的方法Symfony\Component\Form\FormBuilder::createView()
我得到一个错误:Forms 未定义的方法Symfony\Component\Form\FormBuilder::createView(),forms,symfony,symfony-forms,symfony-2.3,Forms,Symfony,Symfony Forms,Symfony 2.3,我得到一个错误: Call to undefined method Symfony\Component\Form\FormBuilder::createView() 对于以下代码 public function searchAction(Request $request, $type) { $filters = new Filters(); $form = $this->createFormBuilder($filters) ->setActi
Call to undefined method Symfony\Component\Form\FormBuilder::createView()
对于以下代码
public function searchAction(Request $request, $type) {
$filters = new Filters();
$form = $this->createFormBuilder($filters)
->setAction($this->generateUrl('project_search'))
->add('name', 'text');
if($type == 'extra') {
$form->add('job', 'text');
}
$form->add('send', 'submit', array('label' => "Envoyer"))
->getForm();
return $this->render('Bundle:Controller:search.html.twig', array(
'form' => $form->createView(),
));
}
我相信这是因为我添加了一个新的输入
$form->add('job','text')代码>。如何修复此问题?您需要引用表单
实例,而不是表单生成器
。您已经在使用返回所需引用的getForm()
方法,但您没有在任何地方对其进行辅助
$filters = new Filters();
$formBuilder = $this->createFormBuilder($filters)
->setAction($this->generateUrl('project_search'))
->add('name', 'text');
if($type == 'extra') {
$formBuilder->add('job', 'text');
}
$formBuilder->add('send', 'submit', array('label' => "Envoyer"));
$form = $formBuilder->getForm();
return $this->render('Bundle:Controller:search.html.twig', array(
'form' => $form->createView(),
));