我正在从QueryBuilder对象
创建Zend Paginatoruse Doctrine\ORM\Query;
use Doctrine\ORM\Tools\Pagination\Paginator as DoctrinePaginator
use Zend\Paginator\Paginator;
[...]
protected function paginate(QueryBuilder $queryBuilder, int $itemsPerPage = 10): Paginator
{
$adapter = new PaginatorAdapter(new DoctrinePaginator($queryBuilder->getQuery()));
$paginator = new Paginator($adapter);
$paginator->setItemCountPerPage(max(-1, $itemsPerPage));
return $paginator;
}
public function findBy(array $ criteria,array $ orderBy = null,$ limit = null,$ offset = null)
我想以相同的方式创建findPaginatedBy
方法Doctrine的findBy
方法(使用条件数组)。此方法将使用paginate
无法从findBy *方法中获取QueryBuilder或Query对象,所以:
有没有人知道使用条件数组创建QueryBuilder或直接查询对象的方法?通过坚持?还是SQL?
如果不可能有以这种方式创建QueryBuilder或DQL的库?