Php symfony 2表单输入字段未呈现

Php symfony 2表单输入字段未呈现,php,forms,symfony,templates,twig,Php,Forms,Symfony,Templates,Twig,我试图创建简单的表单,但由于某些原因,输入字段没有呈现。源代码显示表单的open和close标记被呈现,而不是输入字段本身 这是密码 add.html.twig {{ form_start(form) }} {{ form_widget(form) }} {{ form_end(form) }} 我做错了什么?如果要渲染表单组件,请尝试 {{ form_widget(form) }} 而不是 {{ form_label(form) }} 如果要仅渲染字段的标签,则需要将字段指定为: {

我试图创建简单的表单,但由于某些原因,输入字段没有呈现。源代码显示表单的open和close标记被呈现,而不是输入字段本身

这是密码

add.html.twig

{{ form_start(form) }}
{{ form_widget(form) }}
{{ form_end(form) }}

我做错了什么?

如果要渲染表单组件,请尝试

{{ form_widget(form) }}
而不是

{{ form_label(form) }}
如果要仅渲染字段的标签,则需要将字段指定为:

{{ form_label(form.email) }}
表单的完整手动呈现版本可以是:

{{ form_start(form) }}
    {{ form_errors(form) }}

    <div>
        {{ form_label(form.email) }}
        {{ form_errors(form.email) }}
        {{ form_widget(form.email) }}
    </div>

    <div>
        {{ form_label(form. password) }}
        {{ form_errors(form. password) }}
        {{ form_widget(form. password) }}
    </div>

    <div>
        {{ form_widget(form. Send) }}
    </div>

{{ form_end(form) }}
{{form_start(form)}
{{form_errors(form)}}
{{form_label(form.email)}
{{form_errors(form.email)}
{{form_小部件(form.email)}
{{form_标签(form.password)}
{{form_errors(form.password)}}
{{form_小部件(form.password)}
{{form_小部件(form.Send)}
{{form_end(form)}}

如果要呈现表单组件,请尝试

{{ form_widget(form) }}
而不是

{{ form_label(form) }}
如果要仅渲染字段的标签,则需要将字段指定为:

{{ form_label(form.email) }}
表单的完整手动呈现版本可以是:

{{ form_start(form) }}
    {{ form_errors(form) }}

    <div>
        {{ form_label(form.email) }}
        {{ form_errors(form.email) }}
        {{ form_widget(form.email) }}
    </div>

    <div>
        {{ form_label(form. password) }}
        {{ form_errors(form. password) }}
        {{ form_widget(form. password) }}
    </div>

    <div>
        {{ form_widget(form. Send) }}
    </div>

{{ form_end(form) }}
{{form_start(form)}
{{form_errors(form)}}
{{form_label(form.email)}
{{form_errors(form.email)}
{{form_小部件(form.email)}
{{form_标签(form.password)}
{{form_errors(form.password)}}
{{form_小部件(form.password)}
{{form_小部件(form.Send)}
{{form_end(form)}}
在你的小树枝上试试这个:

{% block form_row %}
{% spaceless %}
    <div class="form-group">
        {{ form_label(form) }}
        <div>
            {{ form_widget(form) }}
        </div>
    </div>
{% endspaceless %}
{% endblock form_row %}
{%block form_row%}
{%spaceless%}
{{form_标签(form)}
{{form_widget(form)}
{%endspaceless%}
{%endblock form_row%}
在你的小树枝上试试这个:

{% block form_row %}
{% spaceless %}
    <div class="form-group">
        {{ form_label(form) }}
        <div>
            {{ form_widget(form) }}
        </div>
    </div>
{% endspaceless %}
{% endblock form_row %}
{%block form_row%}
{%spaceless%}
{{form_标签(form)}
{{form_widget(form)}
{%endspaceless%}
{%endblock form_row%}

您在表单类中实现了错误的方法:您需要实现自定义表单类型的
buildForm
方法

实际上,在
UserForm
类中,您需要:

public function buildForm(FormBuilderInterface $builder, array $options)
而不是

public function formBuilder(FormBuilderInterface $builder, array $options)

希望此帮助您在表单类中实现了错误的方法:您需要实现自定义表单类型的
buildForm
方法

实际上,在
UserForm
类中,您需要:

public function buildForm(FormBuilderInterface $builder, array $options)
而不是

public function formBuilder(FormBuilderInterface $builder, array $options)

希望这个帮助

表单标签是一个打字错误。在代码中,它是实际的form_小部件,如前所述,我得到了一个空白页面,但带有表单标签。当我尝试使用form_widget(form.email)时,我得到一个错误,表示对象“Symfony\Component\form\FormView”的方法“email”不存在@Vodokan,非常奇怪。。。您使用的是哪个版本的框架?我将尝试复制您的情景Symfony 2.7.3版-app/dev/debugHi@Vodokan我复制您的问题并在另一个答案中发布我的解决方案。如果标签有误,请参阅。在代码中,它是实际的form_小部件,如前所述,我得到了一个空白页面,但带有表单标签。当我尝试使用form_widget(form.email)时,我得到一个错误,表示对象“Symfony\Component\form\FormView”的方法“email”不存在@Vodokan,非常奇怪。。。您使用的是哪个版本的框架?我将尝试复制您的场景Symfony 2.7.3版-app/dev/debugHi@Vodokan我复制您的问题并在另一个答案中发布我的解决方案如果您将表单getname方法更改为其他方法会发生什么?什么都没有。如果将表单getname方法更改为其他方法,会发生什么情况?无。又是空白页