Symfony 表单:对 Twig 中的字段禁用 "required"

Symfony form: disable "required" for a field from Twig

我正在尝试禁用前端 HTML5 对 Symfony 内置表单中的字段的验证。

在 Twig 中,我使用此代码:

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

但该字段仍被视为必填字段。 我做错了什么?

你可以在 twig 中这样做:

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

或者您可以在您的表单类型中执行此操作 class:

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

编辑:

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

表格class

->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) }}

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

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

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

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