Laravel显示分页器中的所有链接

Laravel显示分页器中的所有链接,laravel,laravel-5.7,Laravel,Laravel 5.7,自Laravel 5.7以来,paginatorlinks()方法在调用时仅显示减少的页数。可以使用onEachSide($count)方法自定义链接的数量 ‹‹ ‹ 1 2 ... 47 48 49 50 51 52 53 ... 102 103 › ›› 我想显示每个页面,以便使用html创建页面选择器下拉列表 调用onEachSide(9999)确实有效,但它看起来很脆弱,并且可能会在我正在编写的应用程序可能达到的高页面计数时崩溃 获取所有页面链接的干净方法是什么 编辑:我使用的是自定义

自Laravel 5.7以来,paginator
links()
方法在调用时仅显示减少的页数。可以使用
onEachSide($count)
方法自定义链接的数量

‹‹ ‹ 1 2 ... 47 48 49 50 51 52 53 ... 102 103 › ››
我想显示每个页面,以便使用html
创建页面选择器下拉列表

调用
onEachSide(9999)
确实有效,但它看起来很脆弱,并且可能会在我正在编写的应用程序可能达到的高页面计数时崩溃

获取所有页面链接的干净方法是什么

编辑:我使用的是自定义视图,如下所示:

@if ($paginator->hasPages())
    <ul class="pagination">
        {{-- Previous Page Link --}}
        @if ($paginator->onFirstPage())
            <li class="disabled">&lsaquo;&lsaquo;</li>
            <li class="disabled">&lsaquo;</li>
        @else
            <li><a href="{{ $paginator->toArray()['first_page_url'] }}">&lsaquo;&lsaquo;</a></li>
            <li><a href="{{ $paginator->previousPageUrl() }}">&lsaquo;</a></li>
        @endif

        {{--Pagination Elements --}}
        @foreach ($elements as $element)
            @if (is_string($element))
                <li class="disabled"><span>{{ $element }}</span></li>
            @endif

            @if (is_array($element))
                @foreach ($element as $page => $url)
                    @if ($page == $paginator->currentPage())
                        <li class="active"><span>{{ $page }}</span></li>
                    @else
                        <li><a href="{{ $url }}">{{ $page }}</a></li>
                    @endif
                @endforeach
            @endif
        @endforeach

        {{-- Next Page Link --}}
        @if ($paginator->hasMorePages())
            <li><a href="{{ $paginator->nextPageUrl() }}">&rsaquo;</a></li>
            <li><a href="{{ $paginator->nextPageUrl() }}">&rsaquo;&rsaquo;</a></li>
        @else
            <li class="disabled">&rsaquo;</li>
            <li class="disabled"><span>&rsaquo;&rsaquo;</li>
        @endif
    </ul>
@endif
@if($paginator->hasPages())
    {{--上一页链接--} @如果($paginator->onFirstPage())
  • &lsaqo&伊萨库
  • &lsaqo @否则
  • @恩迪夫 {{--分页元素--} @foreach($elements作为$element) @if(is_字符串($element))
  • {{$element}
  • @恩迪夫 @if(is_数组($element)) @foreach($page=>$url形式的元素) @如果($page==$paginator->currentPage())
  • {{$page}
  • @否则
  • @恩迪夫 @endforeach @恩迪夫 @endforeach {{--下一页链接--} @如果($paginator->hasMorePages())
  • @否则
  • &rsaquo
  • &rsaquo&rsaquo @恩迪夫
@恩迪夫
$elements
变量似乎已经删除了额外的页面。

分页器使用来呈现页面。此视图始终实现三个点。
您可以创建一个自定义视图,该视图呈现所有分页页面,而不显示任何三点项目,并将此视图作为第一个参数传递给


更新:您使用的视图与Laravel的内置视图完全相同。您不应该使用
$element
变量,因为它会被三个点元素窗口化

您应该使用pagination lastpage变量并自己在所有页面上循环。例如,像这样:

{{-- Pagination Elements --}}
@for ($page = 1; $page <= $paginator->lastPage(); $page++)
    @if ($page == $paginator->currentPage())
        <li class="active"><span>{{ $page }}</span></li>
    @else
        <li><a href="{{ $paginator->url($page) }}">{{ $page }}</a></li>
    @endif
@endforeach
{{--Pagination元素--}
@对于($page=1;$page lastPage();$page++)
@如果($page==$paginator->currentPage())
  • {{$page}
  • @否则
  • @恩迪夫 @endforeach
    分页器使用来呈现页面。此视图始终实现三个点。
    您可以创建一个自定义视图,该视图呈现所有分页页面,而不显示任何三点项目,并将此视图作为第一个参数传递给


    更新:您使用的视图与Laravel的内置视图完全相同。您不应该使用
    $element
    变量,因为它会被三个点元素窗口化

    您应该使用pagination lastpage变量并自己在所有页面上循环。例如,像这样:

    {{-- Pagination Elements --}}
    @for ($page = 1; $page <= $paginator->lastPage(); $page++)
        @if ($page == $paginator->currentPage())
            <li class="active"><span>{{ $page }}</span></li>
        @else
            <li><a href="{{ $paginator->url($page) }}">{{ $page }}</a></li>
        @endif
    @endforeach
    
    {{--Pagination元素--}
    @对于($page=1;$page lastPage();$page++)
    @如果($page==$paginator->currentPage())
    
  • {{$page}
  • @否则
  • @恩迪夫 @endforeach
    为什么不使用有多少页的信息进行倒计时?为什么不使用有多少页的信息进行倒计时?我已经使用了自定义视图,我在问题文本中添加了该视图。我的缺点是没有把它放在第一位。我已经使用了一个自定义视图,我在问题文本中添加了它。我的错是没有把它放在这里。