Symfony形式:禁用Twig字段的“必需”

时间:2015-06-13 11:33:40

标签: php forms symfony twig

我正在尝试为Symfony中构建的表单中的字段禁用前端HTML5验证。

在Twig中,我使用此代码:

{{ form_widget(form.email, {'attr': {'class': 'form-control input-lg','novalidate': 'novalidate}}) }}

但仍然认为该字段是必需的。 我做错了什么?

2 个答案:

答案 0 :(得分:8)

您可以在表单类型中设置该选项以禁用字段验证。

->add('test', null, array(
    'required' => false
))

如果你想为整个领域禁用它,你可以尝试这样的事情:

{{ form_start(form, { attr: {novalidate: 'novalidate'} }) }}

答案 1 :(得分:5)

你可以在树枝上做到这一点:

{{ form_start(form, { attr: {novalidate: 'novalidate'} }) }}

或者您可以在formtype类中执行此操作:

->add('name', 'text', ['required' => false])

修改

在下面的示例中,只有name字段才会触发html5验证。

Formclass

->add('name', 'text')
->add('middlename', 'text', ['required' => false])

枝条

{{ form_start(form) }}
    <p>NAME: {{ form_widget(form.name) }}</p>
    <p>MIDDLENAME: {{ form_widget(form.middlename) }}</p>

    <p><button name="button">Submit</button></p>
{{ form_end(form) }}