Symfony2: вызов метода undefined Doctrine\ORM\QueryBuilder:: getResult()
С кодом:
$qb = $entityManager->createQueryBuilder();
$qb->select('cat')->from('BuyAndSellSiteBundle:Category ', 'cat');
$qb->getQuery();
$a =$qb->getResult();
Я получаю исключение:
FatalErrorException: Error: Call to undefined method Doctrine\ORM\QueryBuilder::getResult() in C:\xampp\htdocs\buySell\src\BuyAndSell\SiteBundle\Controller\DefaultController.php line
Ответы
Ответ 1
Это имеет смысл. Поскольку QueryBuilder
не изменяется сам, вам нужно сохранить результат вызова getQuery()
:
$queryBuilder = $entityManager->createQueryBuilder();
$queryBuilder->select('cat')->from('BuyAndSellSiteBundle:Category ', 'cat');
// get the Query from the QueryBuilder here ...
$query = $qb->getQuery();
// ... then call getResult() on the Query (not on the QueryBuilder)
$result = $query->getResult();
Ответ 2
Изменить на:
$a = $qb->getQuery()->getResult();
// or
$q = $qb->getQuery();
$a = $q->getResult();