Мне интересно, как я могу динамически установить атрибут класса HTML для элементов-флажков, используя FormBuilder в Symfony2.
Я использую элемент, сгенерированный сущностью:
add('myEntity', 'entity', array(
'class' => 'MyBundle:myEntity',
'property' => 'label',
'multiple' => true,
'expanded' => true,
))
Это только устанавливает id флажков в соответствии с этим шаблоном: [FORM_NAME] _ [class_name] _ [ID] (например, acme_my_form_my_entity_5)
Я хочу знать, могу ли я также установить атрибут класса с этими значениями: [FORM_NAME] [class_name] [метка]. Метка — это еще одно поле в сущности.
Это возможно ?
Да. Возможно, но вам нужно будет прочитать документы!
Если вы ленивы и не хотите их читать, просто выполните поиск в Google, используя «пользовательские флажки symfony», и вы вернетесь в Stackoverflow, где есть много других примеров. как это. Ответ с помощью кода будет просто копией других примеров, поэтому вам лучше создать свой собственный и вставить его как собственное решение.
Если вы хотите простое решение, помните, что вы можете сделать что-то подобное прямо в шаблоне Twig:
{{ form_widget(form.myEntity, { 'attr': {'class': **Your_dinamic_class_value**} }) }}
Других решений пока нет …