ララベルで手動でページネーション機能を実装する方法は何ですか?

Laravelでは、Paginatorクラスを使用して手動でページ分割機能を実装することができます。最初に、Eloquentモデルを使用してデータをクエリし、その後Paginatorクラスを使用してクエリ結果をページ分割します。

以下は、サンプルコードです:

use App\Models\User;
use Illuminate\Pagination\Paginator;

// 查询数据
$users = User::all();

// 每页显示的数量
$perPage = 10;

// 当前页码
$page = request()->get('page', 1);

// 创建一个Paginator实例
$paginator = new Paginator($users->forPage($page, $perPage), $users->count(), $perPage, $page, [
    'path' => Paginator::resolveCurrentPath(),
]);

// 获取分页数据
$paginatedUsers = $paginator->items();

// 返回分页数据
return view('users.index', ['users' => $paginatedUsers, 'paginator' => $paginator]);

ビューファイルでは、$paginatorオブジェクトを使用してページネーションリンクを生成できます。

@foreach ($users as $user)
    <!-- 显示用户信息 -->
@endforeach

{{ $paginator->links() }}

上記のコードを使用して、ページネーション機能を手動で実装し、ビューにページリンクを表示することができます。

bannerAds