I'm using the FormType for an Entity of mine, and setting up an entity field. I need two Where
clauses in an And
, and from what I've read on the Query Builder page, this is at least how I should go about it:
'query_builder' => function ($er){ $qb = $er->createQueryBuilder('p'); $qb ->where($qb->expr()->andx( $qb->expr()->in('p', '?1'), $qb->expr()->not( $qb->expr()->eq('p.location', 'NULL') ) )) ->setParameter(1, $this->totalScope) ; return $qb; },
However, the not(eq('col', 'NULL'))
doesn't achieve the desired result, and in fact, errors with:
Error: Expected Literal, got 'NULL'
You can use isNotNull
:
'query_builder' => function ($er){ $qb = $er->createQueryBuilder('p'); $qb ->where($qb->expr()->andx( $qb->expr()->in('p', '?1'), $qb->expr()->isNotNull('p.location') )) ->setParameter(1, $this->totalScope); return $qb; },
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With