4

是否可以通过控制器返回表单,如下所示:

    $form = $this->createForm(new TfQuestionType(),$TfQuestion);
    return new Response($form->createView());

我想通过 Ajax 检索它,我知道您应该返回表单的 HTML 字符串,但在我的情况下我不能这样做。

谢谢,

大卫。

4

1 回答 1

4

您可以通过渲染模板renderView并将其作为响应返回来做到这一点。看看这里的文档:

http://symfony.com/doc/current/book/controller.html#rendering-templates

编辑

在您的控制器中:

$form = $this->createForm(new TfQuestionType(), $TfQuestion);

return $this->render(
    'FooBundle:Bar:form.html.twig',
    array('form' => $form)
);

form.html.twig可能看起来像这样:

<form method="post" action="{{ path('some_route')}}">
    {{ form_widget(form) }}
    <input type="submit">
</form>

希望这可以帮助 :)

于 2013-11-08T19:17:07.397 回答