Laravel は、開発者が高品質の Web アプリケーションを簡単に構築するための便利な機能とツールを多数提供する、非常に人気のある最新の開発フレームワークです。一般的な機能の 1 つはページングです。Laravel には便利なページング ツールが組み込まれていますが、多くの開発者はページング スタイルが見つからないという問題に遭遇します。この記事では、この問題を解決する方法を説明します。
Laravel のページング関数を使用するには、クエリ ビルダーまたは Eloquent モデル オブジェクトを通じてページング クエリを実行できます。たとえば、次のコードを使用して、すべてのユーザー データをクエリし、ページングで表示できます。
use Illuminate\Support\Facades\DB; use App\Models\User; $users = DB::table('users')->paginate(10); // 或者可以使用Eloquent模型对象进行分页查询 $users = User::paginate(10);
上記のコードを通じて、現在のページング ユーザー データ、ページングを含むページング オブジェクト $users を取得できます。関連リンクとその他のページネーション プロパティ。デフォルトでは、Laravel のページング ツールには、ブートストラップとセマンティック UI という 2 つの組み込みページング スタイル セットがあります。
ただし、独自に定義した CSS スタイルなど、別のページング スタイルを使用する場合は、カスタマイズされた構成を実行する必要があります。
まず、カスタマイズしたページング スタイルのテンプレートとして機能するビュー ファイルを作成する必要があります。新しいテンプレート ファイル pagination.blade.php を resource/views/vendor/pagination/ ディレクトリに作成できます。次に、必要な HTML スタイルと CSS スタイルをこのファイルに記述します。以下は簡単な例です:
<div class="pagination-style"> <ul class="pagination"> {{-- Previous Page Link --}} @if ($paginator->onFirstPage()) <li class="disabled"><span>«</span></li> @else <li><a href="{{ $paginator->previousPageUrl() }}" rel="prev">«</a></li> @endif {{-- Next Page Link --}} @if ($paginator->hasMorePages()) <li><a href="{{ $paginator->nextPageUrl() }}" rel="next">»</a></li> @else <li class="disabled"><span>»</span></li> @endif {{-- Pagination Elements --}} @foreach ($elements as $element) {{-- "Three Dots" Separator --}} @if (is_string($element)) <li class="disabled"><span>{{ $element }}</span></li> @endif {{-- Array Of Links --}} @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 </ul> </div>
上記のコードでは、Bootstrap スタイルに基づいて独自の CSS スタイルを定義し、Laravel のデフォルトのページネーション テンプレートをオーバーライドします。特定の実装の詳細は次のとおりです:
'pagination' => 'vendor.pagination.pagination'
ここのvendor.pagination.paginationは、作成したばかりのページング テンプレート ファイルへのパスを表します。
最後に、ビュー ファイルで、次の方法でカスタマイズしたページング テンプレートを呼び出すことができます:
{{ $users->links('vendor.pagination.pagination') }}
上記の手順を通じて、Laravel で独自のページング スタイルをカスタマイズできます。もちろん、よりリッチなページング スタイルを実装したい場合は、Laravel のページング機能を拡張することで実現できます。
以上がスタイルなしでlaravelのページネーションを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。