Я не могу запросить данные массива - PullRequest
0 голосов
/ 26 марта 2019

Это buidForm

public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder
        ->add('categorie', EntityType::class, [
        // This field shows all the categories
        'placeholder' => 'Choisissez une option',
        'class'    => Categorie::class,
        'mapped' => false,
        'multiple' => true
        ]);
}

А это контроллер

$form = $this->createForm(RechercheCandidatType::class, null);
$form->handleRequest($request);

if ($form->isSubmitted() && $form->isValid()) {
    $categories = $request->request->get('recherche_candidat_categorie');
      foreach ($categories as $categorie) {
            dump($categorie);
        }
}

return $this->render("test.html.twig",['form' => $form->createView()]);

А это ТВИГ

        {{ form_start(form,{'attr': {'novalidate': 'novalidate'}}) }}
        <div class="">
            {{ form_errors(form) }}
        </div>

        <div class="row">
            <div class="col">
                {{ form_row(form.categorie) }}
            </div>
        </div>

        {{ form_row(form._token) }}
        <button class="btn btn-success">Afficher</button>
        {{ form_end(form) }} 

![enter image description here Это из элемента Inspect

 <form name="recherche_candidat" method="post" novalidate="novalidate">
            <div class="">

            </div>

            <div class="row">
                <div class="col">
                    <div class="form-group"><label class="required" for="recherche_candidat_categorie">Categorie</label><select id="recherche_candidat_categorie" name="recherche_candidat[categorie][]" required="required" class="form-control" multiple="multiple"><option value="1">Web</option><option value="2">Mobile</option></select></div>
                </div>
            </div>

            <input type="hidden" id="recherche_candidat__token" name="recherche_candidat[_token]" value="B25v0VqQWQbERl3c3_EsGkyiVZTvC8xn37szufreGmo" />
            <button class="btn btn-success">Afficher</button>
            </form>

Проблема в том, что после отправки я не могу получить данные массива ($ types = null )

PS: recherche_candidat_categorie = идентификатор выбранной формы

1 Ответ

3 голосов
/ 26 марта 2019

Вы не можете получить данные, используя идентификатор, вы должны использовать имя, поэтому вместо "recherche_candidat_categorie" используйте это

$request->request->get('recherche_candidat');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...