всем привет,
->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: извините за мой английский!
Я достиг того, что хотел. Я просто добавляю два поля, не сопоставленные
->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 ))