我想编辑我的帖子而不重新加载页面。我创建动作,我通过ajax发送请求来获取评论表单视图,但是我收到错误:
Catchable Fatal Error: Object of class Symfony\Component\Form\FormView could not be converted to string
如何通过ajax获取表单视图?谢谢!
答案 0 :(得分:5)
由于您的错误很明确,我假设您以这种方式返回表单:(如果您可以粘贴控制器,那就太好了。)
function yourFormRenderingAction(...){
$form = ... //creating your form
return $form->createView();
}
但是,由于createView返回了一个可以在树枝模板中使用以轻松构建视图的对象,因此无法工作。
您应该创建一个简单的树枝模板,将$form
作为参数:
{# form.html.twig #}
{{ form(form) }}
您的控制器最终必须如下所示:
function yourFormRenderingAction(...){
$form = ... //creating your form
return $this->render('PATH_TO_TWIG:form.html.twig', array(
'form' => $form->createView(),
));
}
当然,您可以自定义表单呈现等。
有关详细信息,您可以查看Symfony form documentation