Forms Symfony2:阻止radio小部件呈现标签

Forms Symfony2:阻止radio小部件呈现标签,forms,radio-button,symfony,twig,Forms,Radio Button,Symfony,Twig,我正在尝试使用symfony2中的Twig来定制表单布局。我的目标是呈现一个无线电输入,看起来像这样 <label class=" required">Label name</label> <span class="form-radio"> <input type="radio" name="album_has_subalbums_1" /> Yes </span> <span class="form-radio">

我正在尝试使用symfony2中的Twig来定制表单布局。我的目标是呈现一个无线电输入,看起来像这样

<label class=" required">Label name</label>
<span class="form-radio">
    <input type="radio" name="album_has_subalbums_1" /> Yes
</span>
<span class="form-radio">
    <input type="radio" name="album_has_subalbums_0" /> No
</span>
但是,这将呈现以下标记:

<label class=" required">Label name</label>

<span class="form-radio">
    <input type="radio" id="album_has_subalbums_1" name="album[has_subalbums]" required="required" value="1">
</span>
<label for="album_has_subalbums_1" class=" required">Yes</label>

<span class="form-radio">
    <input type="radio" id="album_has_subalbums_0" name="album[has_subalbums]" required="required" value="0">
</span>
<label for="album_has_subalbums_0" class=" required">No</label>
标签名称
对
不
基本上,对于每个radio输入元素,它都会创建一个标签来标识其值是“是”还是“否”。我正在使用一个预先存在的设计,因此无法轻松调整html标记

如何防止无线电输入生成选择文本作为标签?我知道它会在内部调用
字段标签
块,但正如您所看到的那样,我的
radio\u小部件
没有引用它,因此我对如何防止这种行为有点迷茫

编辑:


说清楚一点,我想要和我的第一个例子一样的结构。。。我省略了名称和值属性等,但显然只是出于演示目的。

您需要覆盖的不是
radio\u widget
块,而是
choice\u widget
块:

{% block choice_widget %}
{% spaceless %}
    {% if expanded %}
        <div {{ block('widget_container_attributes') }}>
        {% for child in form %}
            {{ form_widget(child) }}
            {{ child.get('label') | trans }} {# <- this is what you need #}
    {# leave the rest untouched #}
{%block choice\u widget%}
{%spaceless%}
{%如果展开%}
{表格%中的子项为%1}
{{form_widget(child)}
{{child.get('label')|trans}{{{code>child.get('label')
对我不起作用,而
child.vars.label
对我起作用。
{% block choice_widget %}
{% spaceless %}
    {% if expanded %}
        <div {{ block('widget_container_attributes') }}>
        {% for child in form %}
            {{ form_widget(child) }}
            {{ child.get('label') | trans }} {# <- this is what you need #}
    {# leave the rest untouched #}