Décrivez ici votre problème ou ce que vous cherchez à faire.

" public function findSearch(SearchData $search): array
{
$query = $this
->createQueryBuilder('a')
->select('a')
->join('a.user', 'u')
->join('a.diplomaTargeted', 'd')
->join('d.activityArea', 's')

        ;

        if(!empty($search->q)){
            $query = $query
                ->andWhere('u.firstname LIKE :q OR u.lastname LIKE :q ')
                ->setParameter('q', "%{$search->q}%");
        }
        if(!empty($search->cp)){
            $query = $query
                ->andWhere('a.cp LIKE :cp')
                ->setParameter('cp', "{$search->cp}%");
        }
        if(!empty($search->ActivityAreaDiplomaTargeted)){
            $query = $query
                ->andWhere('s.id IN (:ActivityAreaDiplomaTargeted)')
                ->setParameter('ActivityAreaDiplomaTargeted', "{$search->ActivityAreaDiplomaTargeted}");
        }"

Ce que je veux

Je cherche à faire un filtre sur les activityArea des DiplomeTargeted

Ce que j'obtiens

rien ne s'affiche

1 réponse


raizen
Réponse acceptée

Bonsoir,

C'est possible d'avoir ton entité 'a' (Tu as mis un alias 'a' qui correspond à une certaine entité, c'est bien de cet entité dont il est question).
Egalement quel est le type de ActivityAreaDiplomaTargeted ? Est-ce un champs de type string, int, array ?

Merci