📜  laravel 8 引导分页修复 - PHP (1)

📅  最后修改于: 2023-12-03 15:32:32.863000             🧑  作者: Mango

Laravel 8 引导分页修复 - PHP

在使用 Laravel 8 的引导分页功能时,有时会遇到分页链接出错的情况,即分页链接的 href 属性不正确。这是因为 Laravel 8 默认使用的是相对路径,但有时我们需要使用绝对路径来避免这个问题。

下面是一种修复方法:

use Illuminate\Pagination\Paginator;

// ...

Paginator::useBootstrap();

$appUrl = config('app.url');

Paginator::currentPathResolver(function () use ($appUrl) {
    return $appUrl . request()->getPathInfo();
});

Paginator::currentPageResolver(function () use ($appUrl) {
    $pageName = Paginator::resolveCurrentPageName();

    $page = request($pageName, 1);

    return $page;
});

以上代码在使用 Bootstrap 分页时设置了使用绝对路径,并通过 config('app.url') 获取了当前应用的 URL 前缀。这样可以保证分页链接的 href 属性是绝对路径。

同时,还设置了当前路径和当前页数的解析方法,用于解析分页链接中的当前路径和页数。

以上代码可以放在 AppServiceProviderboot 方法中,也可以放在其他合适的位置,具体取决于你的需求。

这样就解决了 Laravel 8 引导分页链接出错的问题,使分页功能更加可靠和稳定。