Как применить css для Symfony Form?

Есть темплейт с html+css формой, мне нужно форму переделать на symofony form. В форме есть переключатель radiobutton изначально он выглядел так:
<div class="currency-label">
                <input checked id="cur1" name="currency" type="radio">
                <label for="cur1">RUB</label>
            </div>
            <div class="currency-label active">
                <input id="cur2" name="currency" type="radio">
                <label for="cur2">USD</label>
            </div>

, я создал в своей symfony form:
->add(
                'vacancyCurrency',
                ChoiceType::class,
                [
                    'choices' => [
                        'usd' => 'USD',
                        'eur' => 'EUR',
                    ],
                    'expanded' => true
                ]
            )

и в темплейте:
{{ form_widget(form.vacancyCurrency, {'attr':
                                            {'class': 'currency-label'}
                                        }) }}


но это ламает мой сss т.к. 'class':'currency-label' применяется к всему виджету, как розделить каждый вариант т.е. `USD` и `EURO` в свой `<div>` тег?
  • Вопрос задан
  • 95 просмотров
Решения вопроса 1
@Morilon Автор вопроса
На Stackoverflow выложил ответ: https://stackoverflow.com/questions/57914944/how-t...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@postgresdev
Instructions:
1. You need to access the field in the loop(In my case, through the related form)

Code of the view:


{% for systemItem in form.accountSetting.eprocurementSystemUsed.vars.form.children %}
    <div>
        {{ form_widget(systemItem) }}
        {{ form_label(systemItem) }}
    </div>
{% endfor %}



Code of the form:

->add('eprocurementSystemUsed', ChoiceType::class, [
'choices' => [
'Ariba' => AccountSetting::EPROCURMENT_SYSYTEM_ARIBA,
'Proactis' => AccountSetting::EPROCURMENT_SYSYTEM_PROACTIS,
'Coupa' => AccountSetting::EPROCURMENT_SYSYTEM_COUPA,
'Newtron' => AccountSetting::EPROCURMENT_SYSYTEM_NEWTRON,
'SAP' => AccountSetting::EPROCURMENT_SYSYTEM_SAP,
'Other' => AccountSetting::EPROCURMENT_SYSYTEM_OTHER,
'Oracle' => AccountSetting::EPROCURMENT_SYSYTEM_ORACLE,
],
'expanded' => true,
'multiple' => false,
'empty_data' => null,
'required' => false,
])

Results: input and label in div.
Ответ написан
Комментировать
uDenX
@uDenX
PHP Developer
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы