You can install the package via composer:
composer require vanthao03596/laravel-cursor-paginate
Similar to simplePaginate
, cursorPaginate
displays "Next" and "Previous" links in your application's UI. You may use the cursorPaginate
method like so:
$users = DB::table('users')->orderBy('id')->cursorPaginate(15);
Similarly, you may use the cursorPaginate
method to cursor paginate Eloquent models:
$users = User::where('votes', '>', 100)->orderBy('id')->cursorPaginate(15);
When working with resources, you need to use trait HasCursorPaginate
to your Resource class:
use Illuminate\Http\Resources\Json\ResourceCollection;
use Vanthao03596\LaravelCursorPaginate\HasCursorPaginate;
class YourCollectionResource extends ResourceCollection
{
use HasCursorPaginate;
public $collects = YourResource::class;
}
Each cursor paginator instance provides additional pagination information via the following methods:
Method | Description |
---|---|
$paginator->count() |
Get the number of items for the current page. |
$paginator->cursor() |
Get the current cursor instance. |
$paginator->getOptions() |
Get the paginator options. |
$paginator->hasPages() |
Determine if there are enough items to split into multiple pages. |
$paginator->hasMorePages() |
Determine if there are more items in the data store. |
$paginator->getCursorName() |
Get the query string variable used to store the cursor. |
$paginator->items() |
Get the items for the current page. |
$paginator->nextCursor() |
Get the cursor instance for the next set of items. |
$paginator->nextPageUrl() |
Get the URL for the next page. |
$paginator->onFirstPage() |
Determine if the paginator is on the first page. |
$paginator->perPage() |
The number of items to be shown per page. |
$paginator->previousCursor() |
Get the cursor instance for the previous set of items. |
$paginator->previousPageUrl() |
Get the URL for the previous page. |
$paginator->setCursorName() |
Set the query string variable used to store the cursor. |
$paginator->url($cursor) |
Get the URL for a given cursor instance. |
composer test
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.