Как в Symfony каждый radio input обернуть в отдельный див?

В Symfony каждый radio input можно обернуть в отдельный div, используя специальные опции в формах Symfony.

Чтобы обернуть каждый radio input в отдельный div, нужно создать кастомный шаблон для формы и указать этот шаблон в опциях формы.

1. Создайте новый шаблон для формы. Например, файл radio_div_widget.html.twig:

{% block radio_widget %}
{% spaceless %}
    <div>
        {{ block('radio_inner_widget') }}
    </div>
{% endspaceless %}
{% endblock radio_widget %}

{% block radio_inner_widget %}
{% spaceless %}
    {% for child in form %}
        <div>
            {{ form_widget(child) }}
            {{ form_label(child) }}
        </div>
    {% endfor %}
{% endspaceless %}
{% endblock radio_inner_widget %}

2. В опциях формы укажите новый шаблон:

$form = $this->createFormBuilder($data, ['widget' => 'radio_div'])
    // ...
    ->getForm();

3. Отобразите форму в вашем представлении:

{{ form(form) }}

После выполнения этих шагов, каждый radio input будет обернут в отдельный div. Вы можете добавить любую разметку в созданном шаблоне radio_div_widget.html.twig, чтобы стилизовать каждый radio input по своему усмотрению.

Вот и всё! Теперь каждый radio input будет отображаться, обернутый в отдельный div, как вам требуется.