にリダイレクトされません。Symfony3フォームビルダーSetActionは、私は、ウェブサイトのナビゲーションバーに検索バーを制御するフォームを持っているルート
public function searchFormAction()
{
$form = $this->createFormBuilder()
->setAction($this->generateUrl('search'))
->setMethod('GET')
->add("value", TextType::class, array('label' => false))
->add("Search", SubmitType::class)
->getForm();
return $this->render('components/search-form.html.twig', [
"form" => $form->createView()
]);
}
あなたが見ることができるように、フォームがこの機能に特定のアクションパスを持っています
/**
* @Route("/search", name="search")
*/
public function searchAction(Request $request)
{
return $this -> render ("post/post-search.html.twig", [
"value" => $request->query->get('value')
]);
}
今のところ、これは単にページの値を表示するだけではありません。
の問題は、ウェブサイトは、私が検索でFOOを入れたときに、フォームがそう
を使用した場合にリダイレクトし、そしてパスは次のようになります提出]をクリックしなかったということです。
はlocalhost:8000 /ページ?フォーム%5Bvalue%の5D = fooの&フォーム%5BSearch%5D = &フォーム%5B_token%5D =私は
localhost:8000/search
に行くと、pしようとするとまたPsouIRAy2QaQ8j2XO_uYrs7PcaR6jyjQN3W3_xRMdgw
検索バーには何も表示されず、値も表示されません。ここ
フォームがレンダリングされる方法である。
//search-form.html.twig
<form class="navbar-form navbar-left">
{{ form_start(form) }}
<div class="form-group">
{{ form_row(form.value) }}
</div>
{{ form_row(form.Search) }}
{{ form_end(form) }}
</form>
ベースナビゲーションバーに配置された:エレメントを点検
//base.html.twig
//...
{{ render(controller(
'AppBundle:Form:searchForm'
)) }}
//...
はフォームタグが全く作用を持たず、方法は
属性ことを示しますここで問題となることは何ですか?どのように修正できますか?
フォームがブラウザでレンダリングされるとき、どのように見えますか? Webインスペクタで検査し、スナップショットを撮ってここに投稿できますか? – CodeGodie
あなたのフォームを小枝でどのようにレンダリングしますか? – goto
フォームには、インスペクタに「アクション」属性または「メソッド」属性がありません。 Twigレンダリング要素を追加しました – aln447