Chr*_*yos 8 symfony doctrine-orm
使用"延迟加载"检索一对多关系中的相关对象时,是否可以设置最大结果量?
示例:
让我们说一个人有鞋子
$person = $em->find($id);
$person->getShoes();
Run Code Online (Sandbox Code Playgroud)
这将从鞋子表中取出所有东西person_id.但是,如果我只想显示最后5个鞋子添加到数据库中呢?
或者是使用Paginator的唯一解决方案并且:
$em->createQuery('...')->setMaxResult(5);
Run Code Online (Sandbox Code Playgroud)
M K*_*aid 12
您可以使用doctrine的Criteria类来过滤/排序/限制您的记录
public function getShoes() {
$criteria = \Doctrine\Common\Collections\Criteria::create()
->orderBy(array('your_property_to_sort_collection'=> \Doctrine\Common\Collections\Criteria::DESC))
->setMaxResults(5);
return $this->shoes->matching($criteria);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2138 次 |
| 最近记录: |