SonataAdmin – sonata_type_choice_field_mask

всем привет,

->add('billManagement', 'sonata_type_choice_field_mask', array( 'choices' => array( 'FI' => 'FI', 'GI' => 'GI' ), 'map' => array( 'FI' => array('company'), 'GI' => array('company') ), 'empty_value' => 'Mode de financement', 'required' => true )) ->add('company') ->end() 

Я показываю здесь список с такими вариантами, как «GI» или «FI». В зависимости от выбора отображается другой список. Список компаний. Но всегда в зависимости от выбора, список компаний, которые нужно фильтровать. Я хотел бы видеть компанию, чье поле запроса изменяется в зависимости от выбора billManagement, «FI» или «GI».

Я пробовал это, но он не работает

  ->add('billManagement', 'sonata_type_choice_field_mask', array( 'choices' => array( 'FI' => 'FI', 'GI' => 'GI' ), 'map' => array( 'FI' => $formMapper->add('company', 'sonata_type_model', array( 'class' => 'AppBundle\Entity\User\Company', 'query' => $companyFinance )), 'GI' => $formMapper->add('company', 'sonata_type_model', array( 'class' => 'AppBundle\Entity\User\Company', 'query' => $company )), ), 'empty_value' => 'Mode de financement', 'required' => true )) ->end() 

заранее спасибо

Julien

ps: извините за мой английский!

Solutions Collecting From Web of "SonataAdmin – sonata_type_choice_field_mask"

Я достиг того, что хотел. Я просто добавляю два поля, не сопоставленные

  ->add('billManagement', 'sonata_type_choice_field_mask', array( 'choices' => array( 'FI' => 'FI', 'GI' => 'GI' ), 'map' => array( 'FI' => array('companyFinance'), 'GI' => array('company'), ), 'empty_value' => 'Mode de financement', 'required' => true )) ->add('companyFinance', 'sonata_type_model', array( 'class' => 'AppBundle\Entity\User\Company', 'query' => $companyFinance, 'mapped' => false )) ->add('company', 'sonata_type_model', array( 'class' => 'AppBundle\Entity\User\Company', 'query' => $company, 'mapped' => false ))