我目前正在使用SF2中的服务,该服务使用在此服务的构造函数中带有特定于存储库的QueryBuilder的类变量集,通过QueryBuilder查询数据库。这意味着我想尽可能多地利用此QueryBuilder集,以获得更整洁的代码和使用它的简洁感觉。
我想避免在EntityManager上创建查询,而是仅使用此预定义的Querybuilder进行查询。
我正在寻找类似以下内容的东西:
$query = $this->fooRepository->createQueryBuilder('f')->select('*');
return $query->getResult(Query::HYDRATE_ARRAY);
据我所知,以上将(如果可行)返回数据库中的所有foo。
如果您认为我很愚蠢,应该对预定义的QueryBuilder做一些不同的事情,或者只使用:
createQuery()
方法,因为这根本不是一种好习惯或不可能,请随时告诉我。
谢谢!
尝试:
$qb = $this->fooRepository->createQueryBuilder('foo');
return $qb->getQuery()->getResult(Query::HYDRATE_ARRAY);
无需选择(*)。由于没有添加where子句,因此将选择所有foo项目。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句