Symfony4 - Как отправить форму без передачи параметров в URL - PullRequest
0 голосов
/ 14 октября 2018

Я работаю над фильтрацией категорий для списка и выбираю эту категорию с помощью формы.Когда я отправляю форму, выбор категории и фильтрация работают нормально, но проблема в том, что форма передает всю информацию о себе в URL (имя формы, выбранное значение, дочерние элементы).Поэтому мне нужно как-то запретить форме передавать эти параметры в URL.

Мой контроллер формы выглядит следующим образом:

$form = $this->createFormBuilder()
    ->add('category', ChoiceType::class, [
        'choices' => [
            'Všechny kategorie' => 'vsechny-kategorie',
            'Automobilový průmysl' => 'automobilovy-prumysl',
            'Stavebnictví' => 'stavebnictvi',
            'Elektronika a elektrotechnika' => 'elektronika-a-elektrotechnika',
            'Gastronomie' => 'gastronomie',
            'Lesnictví' => 'lesnictvi',
            'Potravinářský průmysl' => 'potravinarsky-prumysl',
            'IT technologie' => 'it-technologie',
            'Logistika' => 'logistika',
            'Strojírenství' => 'strojirenstvi',
            'Zdravotnictví' => 'zdravotnictvi'
        ],
        'label' => 'Kategorie:'
    ])
    ->add('send', SubmitType::class, ['label' => 'Test'])
    ->getForm();

$form->handleRequest($request);

if($form->isSubmitted() && $form->isValid()) {
    $data = $form->getData();
    $category = $data['category'];

    return $this->redirectToRoute('jobs', [
        'jobs' => $pagination,
        'categoryForm' => $form->createView(),
        'category' => $category
    ]);
}

РЕДАКТИРОВАТЬ:

Вот фрагмент кода формы на мой взгляд.

<div class="category col-md-3">
    {{ form_start(categoryForm) }}
    {{ form_end(categoryForm) }}
</div>

1 Ответ

0 голосов
/ 18 октября 2018

Я думаю, что вы сделали ошибку, вы хотите написать следующий код?

<div class="category col-md-3">
    {{ form_start(categoryForm) }}
    {{ form_widget(categoryForm) }}
    {{ form_end(categoryForm) }}
</div>
...