Doctrine2和SIMPLEOBJECT的异常
作为一个好的实践,我尝试将对象尽可能小,因为数据将是只读的(只需在我的细枝模板中显示实体)。所以我尝试了Doctrine2和SIMPLEOBJECT的异常,doctrine,symfony,doctrine-orm,Doctrine,Symfony,Doctrine Orm,作为一个好的实践,我尝试将对象尽可能小,因为数据将是只读的(只需在我的细枝模板中显示实体)。所以我尝试了hydration\u SIMPLEOBJECThydration模式,但我遇到了一个例外: protected function getFindAllQueryBuilder() { return $this->createQueryBuilder('p') ->select(array('p', 'parent', 'features', 'users'
hydration\u SIMPLEOBJECT
hydration模式,但我遇到了一个例外:
protected function getFindAllQueryBuilder()
{
return $this->createQueryBuilder('p')
->select(array('p', 'parent', 'features', 'users'))
->leftJoin('p.parent', 'parent')
->leftJoin('p.features', 'features')
->leftJoin('p.users', 'users');
}
public function findOneBySlugAsObject($slug)
{
$qb = $this->getFindAllQueryBuilder();
return $qb
->where($qb->expr()->eq('p.slug', ':slug'))
->setParameter('slug', $slug)
->getQuery()->getOneOrNullResult(Query::HYDRATE_SIMPLEOBJECT);
}
无法将SimpleObjector与包含的ResultsMapping一起使用
多个对象结果
我应该如何解释这个信息?顺便说一下,下面是引发异常的代码:
protected function getFindAllQueryBuilder()
{
return $this->createQueryBuilder('p')
->select(array('p', 'parent', 'features', 'users'))
->leftJoin('p.parent', 'parent')
->leftJoin('p.features', 'features')
->leftJoin('p.users', 'users');
}
public function findOneBySlugAsObject($slug)
{
$qb = $this->getFindAllQueryBuilder();
return $qb
->where($qb->expr()->eq('p.slug', ':slug'))
->setParameter('slug', $slug)
->getQuery()->getOneOrNullResult(Query::HYDRATE_SIMPLEOBJECT);
}
SimpleObjector用于查询中不使用任何获取联接的结果集,换句话说,如果在select中使用多个别名,则无法使用它。SimpleObjector速度更快,因为它不处理这些获取联接