Я совсем новичок в Symfony, и я ищу способ динамически создать поле выбора типа в форме.
На самом деле у меня есть несколько продуктов, которые я получаю с помощью query_builder в моей форме.
После представления продукта и цены я хочу выбрать раскрывающийся список, чтобы пользователь мог выбрать количество продуктов для получения.
На самом деле, в форме моего конструктора я выбираю продукты благодаря конструктору запросов и получаю +/- 30 продуктов, но это число может измениться.
Проблема в том, что я хочу столько же выпадающих, сколько продуктов, до сих пор мой конструктор выглядит так:
return $builder
->add('price', EntityType::class ,[
'class'=> Price::class,
'query_builder' => function (PriceRepository $pr) use ($goldenOptions, $currentCompany){
return $pr->getPrice($goldenOptions, $currentCompany->getOrder()->getCompanyType(), $currentCompany->getOnboardingRevenues(), true);
},
'expanded'=>true,
'multiple'=>true,
'placeholder'=>true
])
->add('quantity',ChoiceType::class,[
'choices'=>['mensuel'=>true,'trimestriel'=>false,'1'=>1,'2'=>2,'3'=>3,'4'=>4],
'expanded'=>false,
'multiple'=>false
])
->add('submit', SubmitType::class,[
'attr' => ['class' => 'save'],
'label'=>'Sauvegarder',
'attr' => ['class' => 'btn btn-purple btn-rounded']
])
проблема в том, что таким образом я получаю только 1 выпадающий список, и я хочу несколько. Мне удалось воспроизвести его с помощью JavaScript, но когда я обрабатываю запрос и получаю из него данные, Symfony распознает только первое поле «количество».
Если кто-нибудь, как идеи о том, как я могу создать несколько полей 'количество', и Symfony признал их спасибо. Может быть, слушатель событий, но я понятия не имею, как я могу это сделать.