0

我回来时遇到了一个 symfony2 问题。

我正在尝试制作一个非常简单的“搜索表单”来显示博客的一些帖子。为了不过分,我决定直接在树枝中创建表单,如下所示:

<form class="form-search" method="post" action="{{ url('search_route') }}">
     <input type="text" placeholder="Search" class="input-medium search-query" name="search">
     <button type="submit"><img src="/img/search.png" alt="search" /></button>
</form>

在我的控制器中,我试图找到一种在查询中传递输入值的方法。下面是 searchAction() 的代码:

use Symfony\Component\HttpFoundation\Request;

/..

public function searchAction(Request $request)
    {
        $data = $request->request->all();
        $dql   = "SELECT a FROM PfBlogBundle:Article a WHERE a.title LIKE '{$data['search']}' ORDER by a.id DESC";

        $query = $em->createQuery($dql);

        $paginator  = $this->get('knp_paginator');
        $pagination = $paginator->paginate(
            $query,
            $this->get('request')->query->get('page', 1)/*page number*/,
            4/*limit per page*/
         );

        return $this->render('PfBlogBundle:Default:blog.html.twig', array('pagination'=>$pagination));
    }

事实是,如果我 print_r($data),我有通过输入发送的值。我的问题实际上是在我认为的查询中传递它。我在本地开发并在浏览器中出现服务器错误时我点击提交:/

任何想法?

4

0 回答 0