我的表格服务有问题..。在我的页脚(在布局中),我有一个表单,但它不工作,我不知道为什么。您如何调用"createForm“方法,因为Symfony2.5返回的错误是:
试图调用.../Symfony/src/Dim/WebsiteBundle/Service/QuickContact.php第47行中类"Dim\WebsiteBundle\Service\QuickContact“中的方法"createForm”。
namespace(命名空间Dim\WebsiteBundle\ service ):
class QuickContact
{
private $request;
private $formFactory;
public function setRequest(RequestStack $request_stack)
{
return $this->request = $request_stack->getCurrentRequest();
}
public function setFormFactory($formFactory)
{
return $this->formFactory = $formFactory;
}
public function indexAction()
{
$Contact = new Contact();
# Create the form with the contact entity constraints
$form = $this->formFactory->create(new ContactType(), $Contact);
if($this->request->isMethod('POST'))
{
$form->bind($this->request);
if($form->isValid())
{
echo 'formulaire valide';
}
}
$this->request->getSession()->set('form', $form);
}
}我的service.yml:
services:
dim_website.quickcontact:
class: Dim\WebsiteBundle\Service\QuickContact
calls:
- [setRequest, [@request_stack], setFormFactory, [@form.factory]]在我的布局中,我调用index方法:
{{ quickcontact.indexAction() }}关于您的信息,我的ContactType和他的实体正常工作。
谢谢你们的帮助。诚挚的问候,
发布于 2014-10-08 09:58:38
我不知道您为什么要这样做,但是要回答您的问题:您要在您的QuickContact类上调用方法createForm,该类显然没有定义createForm方法。
在您的情况下,您应该调用$this->formFactory->create(new ContactType(), $Contact)。
https://stackoverflow.com/questions/26254004
复制相似问题