1
Ich habe ein Suchformular erstellt, ich versuche, die folgenden Daten aus der Datenbank zu holen (airport
, airport1
, departuredate
, price
), kann ich nur bekommen [airport
] aber nicht die andere Entität.Mehr Kriterien suchen Abfrage-Generator [Symfony2]
Das ist mein Controller:
public function searchtabflightResultAction(Request $request)
{
$form = $this->createForm(new SearchflightType());
if ($this->get('request')->getMethod() == 'POST')
{
$form->handleRequest($request);
$em = $this->getDoctrine()->getManager();
$entities = $em->getRepository('FLYBookingsBundle:Post')->searchflight($form['airport']->getData());
} else {
throw $this->createNotFoundException('The page you were looking for doesn\'t exist.');
}
return $this->render('FLYBookingsBundle:Post:searchtabflightResult.html.twig', array('entities' => $entities));
}
PostRepository.php
public function searchflight($entity)
{
$qb = $this->createQueryBuilder('u')
->select('u')
->where('u.airport like :entity')
->andWhere('u.airport1 like :entity')
->orderBy('u.id')
->setParameter('entity', '%'.$entity.'%');
return $qb->getQuery()->getResult();
}
Vielen Dank für Ihre Antwort. Ich habe versucht, mit Ihrer Abfrage, es funktioniert gut mit Preis-Einheit, aber wenn ich nach Flughafen suche, findet es kein Ergebnis, ich denke, weil zu streng ist. Mit meinem Query Builder habe ich es so gemacht "% '. $ Entity.'% ''. Wie kann ich es schaffen, nicht streng zu sein? – Sirius