Utilisation de LIKE dans du DQL
Bonjour,je suis un debutant avec symfony et Doctrine.Actuellement je cherche le moyens d'utiliser LIKE dans un queryBuilder.
J'ai essayé ceci dans mon repository.
Code:
1 2 3 4 5 6 7 8
|
public function findByWord($keyword){
$query = $this->createQueryBuilder('a')
->where('a.nom LIKE :key')->orWhere('a.prenom LIKE :key')
->setParameter('key' , $keyword)->getQuery();
return $query->getResult();
} |
Ce que je souhaite faire si c'etait en sql
Code:
1 2
|
SELECT * FROM AGENT a WHERE a.nom LIKE %expr% OR a.prenom LIKE %expr%; |
Et voici mon controller mais j'ai toujours false comme reponse
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
public function get_agent_from_keywordAction(Request $request){
$keyword = $request->get('keyword');
$agents = $this->getDoctrine()->getRepository('MissionBundle:Agent')
->findByWord($keyword);
if(!empty($agents)){
return new JsonResponse($agents);
}
return new JsonResponse(array('flag'=>false));
} |
Actu je ne sais exactement l'origine du probleme,seulement je doute mon utilisation de la directive LIKE et c'est pourquoi je me confie a vous.Merci d'avance