Bổ sung phương thức mới cho tùy chỉnh phân trang trong Laravel
Kể từ phiên bản Laravel 5.8, Laravel bổ sung thêm phương thức mới hỗ trợ cho việc phân trang trở nên dễ dàng tùy chỉnh hơn trước. Cụ thể ở phiên bản Laravel 5.6 trở về trước Laravel mặc định tại trang đang được active bên cạnh sẽ có 3 liên kết
Ở đây mình sẽ chỉ cho các bạn cách nó hoạt động với linksOnEachSide. Mình cũng tạo ra ví dụ đơn giản để bạn có thể hiểu nó nên hoạt động như thế nào.
// với onEachSide(1)
{{ $users->onEachSide(1)->links() }}
// ngoài Front End
1 2 .. 6 7 8 .. 25 26
// với onEachSide(2)
{{ $users->onEachSide(2)->links() }}
// ngoài Front End
1 2 .. 5 6 7 8 9 .. 25 26
// với onEachSide(3)
{{ $users->onEachSide(3)->links() }}
// ngoài Front End
1 2 .. 4 5 6 7 8 9 10 .. 25 26
Phiên bản Laravel 5.7 trở đi, bạn có thể thoải mái tùy biến số lượng theo ý muốn bằng cách như sau. Giả sử mình chỉ tăng lên 1.
// trong controller
public function index()
{
// phân trang users
$users = \App\User::paginate(10);
return view('home', compact('users'));
}
// ngoài blade view
<div class="container">
<h1>Laravel 5.7 - Pagination Link Customizations - logicviet.com</h1>
<table class="table table-bordered">
<thead>
<th>ID</th>
<th>Name</th>
<th>Email</th>
</thead>
@foreach($users as $user)
<tbody>
<td>{{ $user->id }}</td>
<td>{{ $user->name }}</td>
<td>{{ $user->email }}</td>
</tbody>
@endforeach
</table>
{{ $users->onEachSide(1)->links() }}
</div>
0 Comments
no comments!