Skip to content

publicoms/laravel-custom-paginator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Item Paginator

Paginate based on last item, not page.

Build Status StyleCI Codacy Badge Codacy Badge

Installation

composer require publicoms/laravel-custom-paginator

Add the following trait to your Models.

use \publicoms\ItemPaginator\ItemPaginatorTrait;

Add the following provider to config/app.php

\publicoms\ItemPaginator\ItemPaginatorServiceProvider::class,

Usage

This package is based off simplePaginate and will take the same parameters.

$users = new User();

$paginated = $users->itemPaginate();

dd($paginated);

The last parameter is the field that will be used to paginate by, defaults to id.

itemPaginate($perPage = null, $columns = ['*'], $pageName = 'from', $from = 0, $field = null)

ORDER BY DESC

If you want to decend your sorting you'll want to use itemPaginateDesc instead of itemPaginate. The first page will add an extra query to find the last item.

Example Output

array:6 [
  "limit" => 2
  "next_page_url" => "http://localhost?from=190"
  "from" => 100
  "to" => 190
  "data" => array:2 [
    0 => array:8 [
      "id" => 100
      "name" => "test"
      "email" => "test@test.com"
      "password" => "test"
      "remember_token" => null
      "created_at" => "2016-08-02 18:13:19"
      "updated_at" => "2016-08-02 18:13:19"
      "deleted_at" => null
    ]
    1 => array:8 [
      "id" => 190
      "name" => "test2"
      "email" => "test2@test.com"
      "password" => "test"
      "remember_token" => null
      "created_at" => "2016-08-02 18:13:19"
      "updated_at" => "2016-08-02 18:13:19"
      "deleted_at" => null
    ]
  ]
]

Disclaimer

Will only sort by incremental ids.

I've only tested this with sqlite and mysql (see tests) so it may not work in every situation. Please report any you find.

About

Paginate based on last item, not page.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages