我有一个链接分页[1,2,3,4,5,6,7,8…]99,100]和如何更改限制显示[1,2,3,…]98, 99, 100] ?我有自定义分页器类,但我找不到在新类中覆盖此限制。
通过检查类,我发现您必须覆盖Paginator使用的演示器。
它是通过调用render($presenter)
完成的你的演示者必须扩展BootstrapThreePresenter
如果你想使用引导链接,你只需要重写构造函数并在每一边传递你想要的链接数$this->window = UrlWindow::make($numberOfLinksEachSide)
这些只是说明,你必须自己看,我很抱歉不能提供完整的代码,我在打电话。请让我知道如果这工作。
这是我对同样问题的解决方案…在LengthAwarePaginator更新功能链接:
public function links($view = null, $data = [], $onEachSide = 3)
{
if(!$data){
$data = [];
}
$this->onEachSide = $onEachSide;
return $this->render($view, $data);
}
和在URLWindow函数make:
public static function make(PaginatorContract $paginator)
{
return (new static($paginator))->get($paginator->onEachSide);
}
这将从函数make中删除参数$onEachSide——该参数永远不会在任何地方传递——并允许它作为参数传递给函数链接。
要使用这个方法,你需要像这样调用links方法:{{ $collection->links('view-to-use'|null, $dataArray|null, 2)}}
其中2为两边的数字。
您可以通过更改一些核心字段轻松地做到这一点(尽管不建议更改核心文件)。
查找- vendor/laravel/framework/src/Illuminate/Pagination,然后转到UrlWindow。在此页面上找到一些参数,如- $onEachSide, $window。改变和玩这些。