2012-06-10 2 views
0

Кто-нибудь знает, как добавить некоторые настраиваемые параметры в тип поля сущности красивым и чистым способом? например,Форма Тип сущности

->add('groups', 'entity', array(
       'class' => 'MyBundle:Groups', 
       'multiple' => 'true', 
       'query_builder' => function(GroupsRepository $er) { 
          return $er->createQueryBuilder('g') 
           ->orderBy('g.name', 'ASC'); 
         })) 

Предположим, что построитель запросов возвращает «Group1», «Group2» и «Group3». Я хочу, например, «ввести» другой вариант «Любая группа».

Спасибо, Стелиан

ответ

1

EntityType является дочерним ChoiceType. Итак, у вас есть доступ к same options.

->add('groups', 'entity', array(
    'class' => 'MyBundle:Groups', 
    'multiple' => 'true', 
    'query_builder' => function(GroupsRepository $er) { 
     return $er->createQueryBuilder('g')->orderBy('g.name', 'ASC'); 
    }, 
    'empty_value' => 'Any group', 
)) 
+0

Это охватывает случай, когда вам нужен только один дополнительный вариант. Интересно, существует ли чистый способ слияния сущностей с arraycollection или что-то в этом роде. – Stelian

+0

Вы можете добавить все параметры, определенные EntityType и его родителями. Но если вы хотите больше вариантов для вашей конкретной потребности, вы должны определить свой собственный тип. –

+0

Этого я не видел, но: _ Опция «default_value» не существует_, поэтому кажется, что она не очень хорошо работает с несколькими: true – Stelian

Смежные вопросы