Многокритериальный поиск в Symfony 3.4 - PullRequest
0 голосов
/ 05 сентября 2018

Я наконец-то работаю над проектом в Symfony 3, и это действительно очень интересно. Я сталкиваюсь с новыми проблемами и новыми вопросами, которыми хочу поделиться с вами.

Я работаю над формой поиска публикаций по нескольким критериям. (У меня есть 3 поля ввода текста: дата, категория и ключевое слово).

Таким образом, я обрабатываю публикацию, состоящую из даты создания, связанной с категорией отношением oneToMany [Публикация - это объект, владеющий каждой публикацией одной категорией] и имеющий несколько нескольких тегов [существует отношение ManyToMany с объектом тега , Форма поиска позволяет осуществлять поиск по дате создания, категории и тегу. Справа от списка публикаций у меня есть форма для поиска.

enter image description here

 <div>
                <span class="titlerecherche">recherche</span>
                <div class="formrecherch">
                    <form action="{{ url('search_english_pub') }}" method="POST" class="form-horizontal" role="form" data-parsley-validate novalidate>
                        <div class="form_row">
                            <div class="col-xs-12 col-sm-12">
                                <input type="text" class="input" name="date" placeholder="Date *" required></div>
                             </div>

                        <div class="form_row">
                            <div class="col-xs-12 col-sm-12"><input type="text" name="categorie" class="input" placeholder="Catégorie *" required></div>
                        </div>
                        <div class="form_row">
                            <div class="col-xs-12 col-sm-12"><input type="text" name="tag" class="input" placeholder="Tag *" required></div>
                        </div>
                        <button class="btnForm">Envoyer <i class="icon-long-arrow-right"></i></button>
                    </form>
                </div>
            </div>

В моей сущности у меня есть:

введите описание изображения здесь

1 Ответ

0 голосов
/ 06 сентября 2018

Если бы вы могли редактировать вопрос и предоставить более подробную информацию, чтобы я мог помочь больше А пока попробуйте это:

public function searchAction(Request $request)
    {
        $date = $request->request->get('date');
        $category = $request->request->get('category');
        $keyword = $request->request->get('keyword');

        $em = $this->getDoctrine()->getManager();
        $listEnglishs = $em->getRepository('MDWEBInEnglishBundle:InEnglish')
            ->findBy(array("date" => new \DateTime($date), "category" => $category, "keyword" => $keyword));
        return $this->render('MDWEBFrontBundle:InEnglish:list.html.twig',
            array('listEnglishs' => $listEnglishs));
    }

также добавьте это вверху

use Symfony\Component\HttpFoundation\Request;
...