首页 > 解决方案 > Symfony:带有 GET 方法的表单,凌乱的 URL

问题描述

我在 Symfony 4.2.5 中使用搜索表单,GET方法是。但是 URL 不是很……性感。我想获得一个干净的 URL。

我已经禁用了 CSRF 保护,并从 FormBuilder 中删除了提交(否则,提交按钮也在 URL 上)。

表格 :

public function searchForm()
{
    //Form search creation
    $form = $this->createFormBuilder(null,  array('csrf_protection' => false))
            ->setAction($this->generateUrl('page'))
            ->setMethod('GET')
            ->add('object', TextType::class)
            ->getForm();

    return $this->render('page.html.twig', ['searchForm' => $searchForm->createView()]);
}

风景 :

<form class="search">
    {{ form_start(searchForm) }}
    {{ form_row(searchForm.object, {'attr' : {'placeholder': "Search..."}}) }}
    <button id="searchSubmit" class="btn btn-success">Search </button>
    {{ form_end(searchForm) }}
</form>

使用此代码,我得到localhost/page?form[object]=SearchTerm

我知道,这是一个详细信息,但我想获得一个类似localhost/page?object=SearchTerm.

标签: phpformssymfonyget

解决方案


推荐阅读