laravel 5.5 中未设置分页样式
pagination not styled in laravel 5.5
这是我的代码,用于显示我的博客文章的分页!!
<div class="clearfix">
{{ $posts->render() }}
<a class="btn btn-secondary float-right" href="#">Older Posts →</a>
</div>
这里是调用分页功能的控制器
public function index()
{
$posts = post::where('status',1)->paginate(2);
return view('user.blog',compact('posts'));
}
我已经尝试了很多,但我的分页显示但样式不正确!!
为什么 ??
要在您的 blade 视图中显示分页链接:
{{ $posts->links() }}
或者如果需要指定Bootstrap4:
{{$posts->links("pagination::bootstrap-4")}}
Laravel 文档:https://laravel.com/docs/5.5/pagination
要将您的 bootstrap-style 添加到链接中,您可以创建包含以下内容的 pagination.blade.php
<!-- Previous page symbol "<" Link -->
@if ($paginator->hasPages())
<ul class="pagination">
{{-- Previous Page Link --}}
@if ($paginator->onFirstPage())
<li class="page-item disabled">
<a class="page-link" href="#" aria-label="Previous">
<span aria-hidden="true">«</span>
<span class="sr-only">Previous</span>
</a>
</li>
@else
<li class="page-item"><a href="{{ $paginator->previousPageUrl() }}" class="page-link" rel="prev">«</a></li>
@endif
{{-- Pagination Elements(represents page number such as 1,2,3) --}}
@foreach ($elements as $element)
{{-- "Three Dots" Separator --}}
@if (is_string($element))
<li class="page-item disabled">{{ $element }}</li>
@endif
{{-- Array Of Links --}}
@if (is_array($element))
@foreach ($element as $page => $url)
@if ($page == $paginator->currentPage())
<li class="page-item active">
<a href="#" class="page-link">{{ $page }}<span class="sr-only">(current)</span></a>
</li>
@else
<li class="page-item">
<a href="{{ $url }}" class="page-link">{{ $page }}</a>
</li>
@endif
@endforeach
@endif
@endforeach
{{-- Next Page symbol ">" Link --}}
@if ($paginator->hasMorePages())
<li class="page-item"><a href="{{ $paginator->nextPageUrl() }}" class="page-link" rel="next">»</a></li>
@else
<li class="page-item disabled">
<a class="page-link" href="#" aria-label="Next">
<span aria-hidden="true">»</span>
<span class="sr-only">Next</span>
</a>
</li>
@endif
</ul>
@endif
并且比使用
{{ $results->links('pagination') }}
对于 pretty bootstrap 4 分页,只需这样调用:
{{ $results->links( "pagination::bootstrap-4") }}
对于Laravel 8
Laravel 包括使用 Bootstrap CSS 构建的分页视图。要使用这些视图而不是默认的 Tailwind 视图,您可以在 App\Providers\AppServiceProvider class:
的引导方法中调用分页器的 useBootstrap 方法
use Illuminate\Pagination\Paginator;
public function boot()
{
Paginator::useBootstrap();
}
Laravel 文档:https://laravel.com/docs/8.x/pagination
这是我的代码,用于显示我的博客文章的分页!!
<div class="clearfix">
{{ $posts->render() }}
<a class="btn btn-secondary float-right" href="#">Older Posts →</a>
</div>
这里是调用分页功能的控制器
public function index()
{
$posts = post::where('status',1)->paginate(2);
return view('user.blog',compact('posts'));
}
我已经尝试了很多,但我的分页显示但样式不正确!! 为什么 ??
要在您的 blade 视图中显示分页链接:
{{ $posts->links() }}
或者如果需要指定Bootstrap4:
{{$posts->links("pagination::bootstrap-4")}}
Laravel 文档:https://laravel.com/docs/5.5/pagination
要将您的 bootstrap-style 添加到链接中,您可以创建包含以下内容的 pagination.blade.php
<!-- Previous page symbol "<" Link -->
@if ($paginator->hasPages())
<ul class="pagination">
{{-- Previous Page Link --}}
@if ($paginator->onFirstPage())
<li class="page-item disabled">
<a class="page-link" href="#" aria-label="Previous">
<span aria-hidden="true">«</span>
<span class="sr-only">Previous</span>
</a>
</li>
@else
<li class="page-item"><a href="{{ $paginator->previousPageUrl() }}" class="page-link" rel="prev">«</a></li>
@endif
{{-- Pagination Elements(represents page number such as 1,2,3) --}}
@foreach ($elements as $element)
{{-- "Three Dots" Separator --}}
@if (is_string($element))
<li class="page-item disabled">{{ $element }}</li>
@endif
{{-- Array Of Links --}}
@if (is_array($element))
@foreach ($element as $page => $url)
@if ($page == $paginator->currentPage())
<li class="page-item active">
<a href="#" class="page-link">{{ $page }}<span class="sr-only">(current)</span></a>
</li>
@else
<li class="page-item">
<a href="{{ $url }}" class="page-link">{{ $page }}</a>
</li>
@endif
@endforeach
@endif
@endforeach
{{-- Next Page symbol ">" Link --}}
@if ($paginator->hasMorePages())
<li class="page-item"><a href="{{ $paginator->nextPageUrl() }}" class="page-link" rel="next">»</a></li>
@else
<li class="page-item disabled">
<a class="page-link" href="#" aria-label="Next">
<span aria-hidden="true">»</span>
<span class="sr-only">Next</span>
</a>
</li>
@endif
</ul>
@endif
并且比使用
{{ $results->links('pagination') }}
对于 pretty bootstrap 4 分页,只需这样调用:
{{ $results->links( "pagination::bootstrap-4") }}
对于Laravel 8
Laravel 包括使用 Bootstrap CSS 构建的分页视图。要使用这些视图而不是默认的 Tailwind 视图,您可以在 App\Providers\AppServiceProvider class:
的引导方法中调用分页器的 useBootstrap 方法use Illuminate\Pagination\Paginator;
public function boot()
{
Paginator::useBootstrap();
}
Laravel 文档:https://laravel.com/docs/8.x/pagination