Jak korzystać z metody findBy z kryteriami porównawczymi?

Muszę użyć metody findBy przy użyciu kryteriów porównawczych (nie tylko kryteriów dokładnych). Innymi słowy, muszę zrobić coś takiego:

$result = $zakupy_repository->findBy(array("cena" => ">200"));

aby uzyskać wszystkie zakupy, w których nagroda przekracza 200.

Macie jakis pomysl?

1 odpowiedź

To jest przykład użycia klasy Expr () - potrzebowałem tego też kilka dni temu i zajęło mi trochę czasu, aby dowiedzieć się, jaka jest dokładna składnia i sposób użycia:

/**
 * pobiera produkty, które są droższe niż podana cena
 * 
 * @param int $price
 * @return array
 */
public function findProductsExpensiveThan($price)
{
  $em = $this->getEntityManager();
  $qb = $em->createQueryBuilder();

  $q  = $qb->select(array('p'))
           ->from('YourProductBundle:Product', 'p')
           ->where(
             $qb->expr()->gt('p.price', $price)
           )
           ->orderBy('p.price', 'DESC')
           ->getQuery();

  return $q->getResult();
}

Twoja odpowiedź

Zaloguj się aby odpowiedzieć.

Operiada

Operiada to polskojęzyczne forum informatyczne działające na zasadzie pytań i odpowiedzi.

Obserwowane tagi

Zaloguj się aby obserwować tagi.