Doctrine2Paginator,getarrayresult

问题描述 投票:0回答:1
但是,这还不够,但是无论如何,前端表示形式是分类的,所以我想在需要时进行一些ajax调用以获取数据。

$qb = $this->createQueryBuilder('c') ->select('a whole bunch') ->join('many joins') ->setFirstResult(0) ->setMaxResults(10)

上面的方法conding不适用于复杂的加入,我做

setMaxResults(10)

并获得2个结果,

setMaxResults(1000)
获得118个结果。学说建议使用其pagination
类,因为它将正确处理计数/迭代。

如果我循环浏览new Paginator($query, true)提供的迭代对象,那一切正常,但是调用存储库函数的代码期望从

getArrayResult
迭代器包含完整的实体对象,这意味着我必须重写所有使用方法而不是数组键。

有一种方法可以使用带有阵列的Paginator?

add

Hydration Mode
到您的查询。
//Set query hydration mode
$query->setHydrationMode(\Doctrine\ORM\Query::HYDRATE_ARRAY);

thanks topaweł的答案,您必须在$ paginator-> getquery()

将是:

symfony doctrine-orm pagination
1个回答
12
投票
$paginator->getQuery()->setHydrationMode(\Doctrine\ORM\Query::HYDRATE_ARRAY);

P.S:对不起,我还没有声誉仅对Pawel的答案发表评论

	
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.