我可以使用findAll()
函数选择不同的值吗?
我尝试着 :
$province = $em->getRepository("FrontendBundle:Store")->findAll(array('distinct' => true));
但它似乎不起作用。
findall不支持此行为,为了即时进行查询(在单独的存储库类中更好),您可以执行以下操作:
/** @var $qb \Doctrine\ORM\QueryBuilder*/
$qb = $em->getRepository("GerlaFrontendBundle:Store")->createQueryBuilder("p");
$province = $qb->select("p")
->distinct(true)
->getQuery()
->getResult();
希望这有帮助
$province = $em->getRepository("FrontendBundle:Store")->findBy(array('distinct' => true));
看到这个http://symfony.com/doc/current/book/doctrine.html#fetching-objects-from-the-database
祝一切顺利
如果要使用findAll()并将其设置为distinct,请覆盖Entity Repository文件中的findAll()并将此方法添加到其中。
public function findAll() {
return $this->findBy(array(), array(array('distinct' => TRUE));
}
我主要用于在findAll()上设置顺序,但它也适用于不同的。