Я пытаюсь настроить макеты форм с помощью Twig в symfony2. Я хочу сделать радиовход, который выглядит примерно так ...
<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>
Я переопределил блок radio_widget
в своей пользовательской теме формы следующим образом
{% block radio_widget %}
{% spaceless %}
<span class='form-radio'>
<input type="radio" {{ block('widget_attributes') }}{% if value is defined %} value="{{ value }}"{% endif %}{% if checked %} checked="checked"{% endif %} />
</span>
{% endspaceless %}
{% endblock radio_widget %}
Однако при этом отображается следующая разметка:
<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>
По сути, для каждого элемента ввода радио создается метка, чтобы определить, является ли значение для него «Да» или «Нет». Я работаю с уже существующим дизайном, поэтому я не могу легко настроить разметку html.
Как я могу запретить радиовходам генерировать текст выбора в виде меток? Я знаю, что он вызывает блок field_label
внутри, но, как вы можете видеть, мой radio_widget
не ссылается на него, поэтому я немного не понимаю, как предотвратить такое поведение.
РЕДАКТИРОВАТЬ:
Чтобы быть ясным, мне нужна такая же структура, как в моем первом примере ... Я пропустил атрибуты имени и значения и т.д., но, очевидно, это просто для демонстрационных целей.