Paginate the given query.
public paginate ( integer $perPage = null, array $columns = ['*'], string $pageName = 'page', integer | null $page = null ) : Illuminate\Contracts\Pagination\LengthAwarePaginator | ||
$perPage | integer | |
$columns | array | |
$pageName | string | |
$page | integer | null | |
return | Illuminate\Contracts\Pagination\LengthAwarePaginator |
/** * Get paginated list * * @param int $perPage * @param array $columns * @return mixed */ public function paginate($perPage = 15, $columns = ['*']) { $this->newQuery()->eagerLoad()->setClauses()->setScopes(); $models = $this->query->paginate($perPage, $columns); $this->unsetClauses(); return $models; }
/** * Retrieve all data of repository, paginated * * @param null $limit * @param array $columns * @return mixed */ public function paginate($limit = null, $columns = ['*']) { return $this->wrap(function ($limit = null, $columns = ['*']) { $limit = is_null($limit) ? $this->perPage : $limit; return $this->model->paginate($limit, $columns); }, new Action(__METHOD__, func_get_args(), Action::READ)); }
/** * Paginate connection w/ query args. * * @param \Illuminate\Database\Eloquent\Builder $query * @param array $args * @return \Illuminate\Database\Eloquent\Builder */ public function scopeGetConnection($query, array $args) { $first = isset($args['first']) ? $args['first'] : 15; $after = $this->decodeCursor($args); $page = isset($args['page']) ? $args['page'] : 1; $currentPage = $first && $after ? floor(($first + $after) / $first) : $page; return $query->paginate($first, ['*'], 'page', $currentPage); }
/** * Custom Paginate current results, for queries that cannot be paginated using paginate(). * * @param int $total * @param int $per_page * * @return LengthAwarePaginator */ public function customPaginate($total, $per_page = 20) { $this->per_page = $per_page; $this->buildQuery(); $current_page = Paginator::resolveCurrentPage() ? Paginator::resolveCurrentPage() : 1; $data = $this->query->paginate($per_page)->items(); $pagination = new LengthAwarePaginator($data, $total, $per_page, $current_page, ['path' => Paginator::resolveCurrentPath()]); return $pagination; }
/** * Paginate the results of this query * * @param int * @param int * @return $this */ public function paginate($perPage, $page) { if ($perPage > 0) { Paginator::currentPageResolver(function () use($page) { return $page; }); $this->paginator = $this->query->paginate($perPage); } else { $this->collection = $this->query->get(); } return $this; }
public function paginate($perPage = null, $columns = array("*"), $itemProcessor = null) { if ($this->disableEloficient) { return parent::paginate($perPage, $columns = array("*")); } $perPage = $perPage ?: ($_GET["perpage"] ?: $this->model->getPerPage()); $paginator = $this->query->getConnection()->getPaginator(); $this->prepareForPagination = true; $this->query->forPage($paginator->getCurrentPage(), $perPage); $collection = $this->get($columns); $totalRows = $this->getPaginationTotalRows(); if ($itemProcessor instanceof Closure) { $collection = call_user_func($itemProcessor, $collection); } return $paginator->make($collection->all(), $totalRows, $perPage); }
/** * Pagination for query * * @param $query * * @return LengthAwarePaginator */ protected function pagination(Builder $query, $page = null) { $action = $this->action; $page = is_null($page) ? Input::get('page') : $page; $max_per_page = $this->getConfig($action)['max_per_page']; return $query->paginate($max_per_page, ['*'], 'page', $page); }
/** * Get the paginated entries. * * @param array $columns * @return Paginator */ public function paginate($perPage = 15, array $columns = ['*']) { return (new Decorator())->decorate($this->query->paginate($perPage, $columns)); }
/** * 翻页 * @param int $perPage * @param string $pageName * @param int|null $page * @return static */ public function paginate(int $perPage, string $pageName = 'page', int $page = null) { $this->original->paginate($perPage, ['*'], $pageName, $page); return $this; }
/** * @param Builder $builder * @return PageInterface */ protected function paginate(Builder $builder) { $size = $this->getPerPage(); $page = new Page($this->service); $data = $this->simplePagination ? $builder->simplePaginate($size) : $builder->paginate($size); $page->setData($data); return $page; }
/** * Retrieve all data of repository, paginated * * @param null $limit * @param array $columns * * @return \Illuminate\Pagination\Paginator */ public function paginate($limit = null, $columns = ['*']) { $this->newQuery(); return $this->query->paginate($limit, $columns); }
/** * @param null $pagination * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator */ public function findAllWithPagination($pagination = null) { $pagination = $pagination ?: self::PAGINATION; return $this->instance->paginate($pagination); }
private static function getPaginatedResults(Builder $query) { return $query->paginate(config('settings.products.results')); }
/** * Paginate all posts. * * @param int $postsPerPage * * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator */ public function paginateAll($postsPerPage) { return $this->model->paginate($postsPerPage); }
/** * Paginate a result set and reset the query. * * @param {int} $limit * * @return \Illuminate\Pagination\Paginator */ public function paginate($limit) { $ret = $this->query->paginate($limit); $this->reset(); return $ret; }
/** * respondWithPaginateCollection * * Make a response based on a Paginated Collection * * @param Builder $query * @param TransformerAbstract $trasformer (default null) * @return Response */ protected function respondWithPaginateCollection(Builder $query, TransformerAbstract $trasformer = null, $cache = false) { $perPage = $this->inputGet('per_page', 20); $page = $this->inputGet('page', 1); //executes query $paginator = $query->paginate($perPage, $columns = array('*'), $pageName = 'page', $page); $out = $paginator->getCollection(); $this->markBench('post-pagination'); $resource = new Collection($out, $this->getTrasformer($trasformer)); $this->markBench('post-transformers'); $resource->setPaginator(new IlluminatePaginatorAdapter($paginator)); $this->prepareFractalManager(); $rootScope = $this->fractal->createData($resource); $resp = $rootScope->toArray(); return $this->jsonResponse($resp); }
/** * Paginate records * * @param int $perPage * @param array $columns * @return \Illuminate\Pagination\Paginator */ public function paginate($perPage = 15, $columns = ['*']) { return $this->builder->paginate($perPage, $columns); }
/** * @param int $perPage * @param string $pageName * @param null $page * * @param array $options * * @return $this */ public function paginate($perPage = 12, $pageName = 'page', $page = null, array $options = []) { $this->paginator = $this->builder->paginate($perPage, ['*'], $pageName, $page); return $this; }
/** * Gets a paginate for the resource. * * @param int $perPage * @param int $page * @param array $columns * @return mixed */ public function paginate($perPage = 15, $page = 1, $columns = array('*')) { $paginator = $this->query->paginate($perPage, $columns, 'page', $page); $this->resetScope(); return $paginator; }
public function paginate($limit = null, $columns = ['*']) { $this->newQuery(); $limit = is_null($limit) ? config('repository.pagination.limit', 15) : $limit; return $this->query->paginate($limit, $columns); }
public function paginate(\Illuminate\Database\Eloquent\Builder $query, $size = null) { $paginator = $query->paginate($size); $this->paginator($paginator); return $paginator; }
/** * Get a paginator for the "select" statement. * * @param int $perPage * @param array $columns * @return \Illuminate\Pagination\Paginator * @static */ public static function paginate($perPage = null, $columns = array()) { return \Illuminate\Database\Eloquent\Builder::paginate($perPage, $columns); }
/** * @param int $perPage * @param array $columns * @return mixed */ public function paginate($perPage = null, $columns = array('*')) { $perPage = is_null($perPage) ? $this->perPage : $perPage; return $this->query->paginate($perPage, $columns); }
/** * @param Builder $builder * @param EncodingParametersInterface $parameters * * @return PagedDataInterface */ protected function paginateBuilder(Builder $builder, EncodingParametersInterface $parameters) { $pageSize = $this->getPageSize($parameters); $pageNumber = $this->getPageNumber($parameters); $paginator = $builder->paginate($pageSize, ['*'], 'page', $pageNumber); /** @var IlluminateRequest $request */ $request = $this->getContainer()->make(IlluminateRequest::class); $url = $request->url(); $query = $request->query(); $pagedData = $this->getFactory()->createPagingStrategy()->createPagedData($paginator, $url, true, $query); return $pagedData; }
/** * Return paginated results. * * @param int $perPage Number of results per page * * @return static */ public function paginate($perPage = 10) { return $this->model->paginate($perPage); }
/** * @return Collection * * method expected to be called (optionally) after each real repository call * also sets cache if cache is enabled */ private function get() { $result = $this->paginate ? $this->model->paginate($this->perPage) : $this->model->get(); $this->storeToCache($result); return $result; }
/** * Wrapper method so we can call the parent's paginate method * and also mock it in mockery too so we don't have to fiddle * faddle with Eloquent underneath * * @param int $perPage * @param array $columns * @return \Illuminate\Pagination\Paginator */ protected function callParentPagination($perPage, $columns) { return parent::paginate($perPage, $columns); }
/** * @param int $perPage * @param array $columns * @return mixed */ public function paginate($perPage = 1, $columns = array('*')) { $this->applyCriteria(); $this->newQuery()->eagerLoadRelations(); return $this->model->paginate($perPage, $columns); }
/** * Paginate the given query. * * @param int $perPage * @param array $columns * @param string $pageName * @param int|null $page * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator * @throws \InvalidArgumentException * @static */ public static function paginate($perPage = null, $columns = array(), $pageName = 'page', $page = null) { return \Illuminate\Database\Eloquent\Builder::paginate($perPage, $columns, $pageName, $page); }
/** * @param int $perPage * @param array $columns * @return mixed */ public function paginate($perPage = 1, $columns = array('*')) { $this->applyCriteria(); return $this->execute($this->model->paginate($perPage, $columns)); }