Pagination
Pagination Methods
php
// Full - includes total count, "Showing 1 to 10 of 42 results"
ServerTable::make(Server::query())->paginate();
// Simple - no COUNT query, faster, "Showing 1 to 10 results"
ServerTable::make(Server::query())->simplePaginate();| Method | Laravel Method | COUNT Query | First/Last Buttons |
|---|---|---|---|
->paginate() | paginate() | Yes | Yes |
->simplePaginate() | simplePaginate() | No | No |
Per-Page
php
// Via class property
class ServerTable extends Table
{
protected int $perPage = 25;
}
// Via fluent setter
ServerTable::make(Server::query())->perPage(25)->paginate();Custom Page Name
For pages with multiple tables:
php
class ServerTable extends Table
{
protected string $pageName = 'serversPage';
}URL: /dashboard?serversPage=2&sitesPage=3
Custom Pagination UI
tsx
<InertiaTable
tableData={servers}
renderPagination={({ links, meta, onPageChange }) => (
<div className="flex justify-center gap-2 p-4">
<button
disabled={!links.prev}
onClick={() => onPageChange(meta.current_page - 1)}
>
Previous
</button>
<span>Page {meta.current_page}{meta.last_page ? ` of ${meta.last_page}` : ''}</span>
<button
disabled={!links.next}
onClick={() => onPageChange(meta.current_page + 1)}
>
Next
</button>
</div>
)}
/>vue
<!-- Coming soon -->