symfony 2创建自定义表单如何获取表单自定义元素?

时间:2013-09-11 09:39:20

标签: php forms symfony

$form = $this->createForm(new OrganizationType(), $entity, array(
        'action' => $this->generateUrl('_control_organization_create'),
        'method' => 'POST',
    ));

    $form->add('submit', 'submit', array('label' => 'Create'));

    return $form;

定义了动作和方法。怎么弄这个?在模板引擎枝条中自定义渲染?

2 个答案:

答案 0 :(得分:3)

通过致电,

{{ form(form) }}

或者,

{{ form_start(form) }}

使用您添加到表单定义中的actionmethod选项值。

来自文档......

另外,请检查Building The Form sectiondocumentation,了解如何通过传递来呈现HTML表单

array('form' => $form->createView()) 

到控制器中的渲染助手。

然后,请查看Rendering the Form partsame documentation

同样......

如果您想在模板中覆盖它们,则必须将正确的值传递给form()form_start()助手,如下所示

{{ form(form, {'action': path('target_route'), 'method': 'GET'}) }}

{{ form_start(form, {'action': path('target_route'), 'method': 'GET'}) }}

答案 1 :(得分:0)

Return your form like this

return $this->render('Your Bundle name: Your controller name : Your twig file', array(
            'form' => $form->createView(),
        ));


And in your twig file get the form like this:

{{ form(form) }}