Laravel 8 tìm kiếm với phân trang

Tài nguyên/lượt xem/sản phẩm/phân trang chỉ mục tương ứng của Blade view template. lưỡi. php sẽ giống như dưới đây

@extends['layout']

@section['content']

Products

Add Product

Category Name SKU Price Actions @if [$products->count[] == 0] @endif @foreach [$products as $product] @endforeach
No products to display.
{{ $product->category->name }} {{ $product->name }} {{ $product->sku }} ${{ $product->price }} Edit @method['DELETE'] @csrf Delete
{{ $products->links[] }}

Displaying {{$products->count[]}} of {{ $products->total[] }} product[s].

@endsection

Ở đây bạn cần chú ý phương pháp

Route::get['products/index-paging', '[email protected]'];
7 và phương pháp
Route::get['products/index-paging', '[email protected]'];
8
cung cấp cho bạn số mục trong trang hiện tại và tổng số mục.

Ngoài ra, hãy xem phương pháp

Route::get['products/index-paging', '[email protected]'];
9 rút ra điều khiển phân trang bên dưới bảng

Để làm cho hành động

composer require kyslik/column-sortable
0 hoạt động, bạn cần thêm một tuyến đường cho nó vào các tuyến đường/web của bạn. tập tin php

Route::get['products/index-paging', '[email protected]'];

Bây giờ nếu bạn mở URL http. //trang web của bạn. com/products/index-paging trong trình duyệt của mình, bạn sẽ có thể
xem bảng có các trang.

[email protected]'];1. Để cài đặt gói đó, gõ.

composer require kyslik/column-sortable

Tiếp theo, bạn cần sửa đổi tệp cấu hình config/app. php và thêm mục sau
dưới khóa con nhà cung cấp.

________số 8

Cuối cùng, chạy lệnh sau để tạo config/columnsortable. tập tin cấu hình php

php artisan vendor:publish --provider="KyslikColumnSortableColumnSortableServiceProvider" --tag="config"

Bây giờ bạn đã thiết lập gói. Để làm cho mô hình

Route::get['products/index-paging', '[email protected]'];
3 của bạn có thể sắp xếp được, bạn cần sửa đổi nó một chút

Route::get['products/index-paging', '[email protected]'];
1

Lưu ý dòng

composer require kyslik/column-sortable
3 ở đầu là cách viết tắt của
đặc điểm
composer require kyslik/column-sortable
4 mà chúng ta sẽ sử dụng.

Dòng

composer require kyslik/column-sortable
5 bên trong lớp mô hình cho phép đặc điểm này trong mô hình của bạn

Cuối cùng, thuộc tính

composer require kyslik/column-sortable
6 xác định cột nào sẽ được hiển thị dưới dạng có thể sắp xếp

Route::get['products/index-paging', '[email protected]'];
6

Để minh họa cách hoạt động của tính năng này, hãy thêm một hành động khác vào bộ điều khiển của chúng ta

Route::get['products/index-paging', '[email protected]'];
7

Bạn có thể thấy rằng bây giờ chúng ta gọi phương thức

composer require kyslik/column-sortable
7 trên lớp
Route::get['products/index-paging', '[email protected]'];
3. Phương thức này rất giống với
Route::get['products/index-paging', '[email protected]'];
0 vì nó đọc các tham số truy vấn
KyslikColumnSortableColumnSortableServiceProvider::class
0 và
KyslikColumnSortableColumnSortableServiceProvider::class
1 của yêu cầu HTTP và sửa đổi
truy vấn SQL cơ bản khi cần.

Tài nguyên mẫu chế độ xem Blade tương ứng/lượt xem/sản phẩm/sắp xếp chỉ mục. lưỡi. php sẽ giống như bên dưới

Route::get['products/index-paging', '[email protected]'];
3

Nó rất giống với mẫu xem trước đây của chúng tôi, nhưng có hai bổ sung

  • bên trong tiêu đề bảng, chúng tôi sử dụng
    KyslikColumnSortableColumnSortableServiceProvider::class
    2 với Blade để hiển thị các cột có thể sắp xếp
  • ở dưới cùng, chúng tôi sử dụng
    KyslikColumnSortableColumnSortableServiceProvider::class
    3 để hiển thị kiểm soát phân trang, đồng thời nối các tham số truy vấn
    KyslikColumnSortableColumnSortableServiceProvider::class
    0 và
    KyslikColumnSortableColumnSortableServiceProvider::class
    1
    vào đó.

Để hiển thị chính xác các mũi tên sắp xếp, bạn cũng cần tải xuống và đưa Phông chữ tuyệt vời vào phần đầu
tài nguyên/lượt xem/bố cục mẫu bố cục của bạn. lưỡi. php.

@extends['layout']

@section['content']

Products

Add Product

Category Name SKU Price Actions @if [$products->count[] == 0] @endif @foreach [$products as $product] @endforeach
No products to display.
{{ $product->category->name }} {{ $product->name }} {{ $product->sku }} ${{ $product->price }} Edit @method['DELETE'] @csrf Delete
{{ $products->links[] }}

Displaying {{$products->count[]}} of {{ $products->total[] }} product[s].

@endsection
0

Cuối cùng, thêm một tuyến đường khác vào tuyến đường/web của bạn. php

@extends['layout']

@section['content']

Products

Add Product

Category Name SKU Price Actions @if [$products->count[] == 0] @endif @foreach [$products as $product] @endforeach
No products to display.
{{ $product->category->name }} {{ $product->name }} {{ $product->sku }} ${{ $product->price }} Edit @method['DELETE'] @csrf Delete
{{ $products->links[] }}

Displaying {{$products->count[]}} of {{ $products->total[] }} product[s].

@endsection
1

Và bây giờ, nếu bạn mở URL http. //trang web của bạn. com/products/index-sorting trong trình duyệt của mình, bạn sẽ có thể thấy bảng đã bật tính năng sắp xếp

Add Product

Category Name SKU Price Actions @if [$products->count[] == 0] @endif @foreach [$products as $product] @endforeach
No products to display.
{{ $product->category->name }} {{ $product->name }} {{ $product->sku }} ${{ $product->price }} Edit @method['DELETE'] @csrf Delete
{{ $products->links[] }}

Displaying {{$products->count[]}} of {{ $products->total[] }} product[s].

@endsection2

Nó trông rất giống với cái trước [với phân trang và sắp xếp], nhưng lưu ý biểu mẫu HTML ở trên cùng.
Khi chúng tôi gửi biểu mẫu này, nó sẽ cung cấp cho chúng tôi tham số truy vấn

KyslikColumnSortableColumnSortableServiceProvider::class
6 trong yêu cầu HTTP.

Bây giờ hãy thêm hành động của bộ điều khiển

@extends['layout']

@section['content']

Products

Add Product

Category Name SKU Price Actions @if [$products->count[] == 0] @endif @foreach [$products as $product] @endforeach
No products to display.
{{ $product->category->name }} {{ $product->name }} {{ $product->sku }} ${{ $product->price }} Edit @method['DELETE'] @csrf Delete
{{ $products->links[] }}

Displaying {{$products->count[]}} of {{ $products->total[] }} product[s].

@endsection
3

Trong mã này, chúng tôi lấy tham số

KyslikColumnSortableColumnSortableServiceProvider::class
6 lấy từ yêu cầu. Tùy thuộc vào độ dài của nó,
chúng tôi có thể thêm một điều kiện bổ sung
KyslikColumnSortableColumnSortableServiceProvider::class
8 vào SQL của mình hoặc không.

Thêm một tuyến đường khác vào tuyến đường/web của bạn. php

@extends['layout']

@section['content']

Products

Add Product

Category Name SKU Price Actions @if [$products->count[] == 0] @endif @foreach [$products as $product] @endforeach
No products to display.
{{ $product->category->name }} {{ $product->name }} {{ $product->sku }} ${{ $product->price }} Edit @method['DELETE'] @csrf Delete
{{ $products->links[] }}

Displaying {{$products->count[]}} of {{ $products->total[] }} product[s].

@endsection
4

Nếu bây giờ bạn mở URL http. //trang web của bạn. com/products/index-filtering trong trình duyệt của bạn,
bạn sẽ có thể xem biểu mẫu lọc phía trên bảng.

Add Product

Category Name SKU Price Actions @if [$products->count[] == 0] @endif @foreach [$products as $product] @endforeach
No products to display.
{{ $product->category->name }} {{ $product->name }} {{ $product->sku }} ${{ $product->price }} Edit @method['DELETE'] @csrf Delete
{{ $products->links[] }}

Displaying {{$products->count[]}} of {{ $products->total[] }} product[s].

@endsection5

Xin lưu ý rằng DataTables phải được tải SAU jQuery. Nếu bạn đang sử dụng jQuery, hãy đảm bảo rằng bạn
đặt tập lệnh DataTables sau nó.

Để trình bày cách sử dụng DataTables trong Laravel, hãy tạo một hành động điều khiển khác

@extends['layout']

@section['content']

Products

Add Product

Category Name SKU Price Actions @if [$products->count[] == 0] @endif @foreach [$products as $product] @endforeach
No products to display.
{{ $product->category->name }} {{ $product->name }} {{ $product->sku }} ${{ $product->price }} Edit @method['DELETE'] @csrf Delete
{{ $products->links[] }}

Displaying {{$products->count[]}} of {{ $products->total[] }} product[s].

@endsection
6

Tài nguyên chế độ xem/lượt xem/sản phẩm/chỉ mục-datatables tương ứng. lưỡi. php sẽ giống như dưới đây

@extends['layout']

@section['content']

Products

Add Product

Category Name SKU Price Actions @if [$products->count[] == 0] @endif @foreach [$products as $product] @endforeach
No products to display.
{{ $product->category->name }} {{ $product->name }} {{ $product->sku }} ${{ $product->price }} Edit @method['DELETE'] @csrf Delete
{{ $products->links[] }}

Displaying {{$products->count[]}} of {{ $products->total[] }} product[s].

@endsection
7

Lưu ý cách chúng tôi xác định bảng HTML trong đoạn mã trên. Chúng tôi chỉ xác định phần đầu của nó, giữ cho phần thân trống.
Điều này là do phần thân thực của bảng sẽ được DataTables điền vào một cách nhanh chóng.

Cũng lưu ý mã JavaScript ở dưới cùng. Nó khởi tạo DataTables và bảo nó sử dụng AJAX để truy vấn
nguồn dữ liệu phía máy chủ. Sử dụng nguồn dữ liệu cho phép chỉ tải phần kết quả cần thiết rất nhanh.

Hãy triển khai hành động nguồn dữ liệu trong bộ điều khiển của chúng tôi

@extends['layout']

@section['content']

Products

Add Product

Category Name SKU Price Actions @if [$products->count[] == 0] @endif @foreach [$products as $product] @endforeach
No products to display.
{{ $product->category->name }} {{ $product->name }} {{ $product->sku }} ${{ $product->price }} Edit @method['DELETE'] @csrf Delete
{{ $products->links[] }}

Displaying {{$products->count[]}} of {{ $products->total[] }} product[s].

@endsection
8

Trong đoạn mã trên, chúng tôi chỉ tải đoạn kết quả bằng cách sử dụng các tham số truy vấn do DataTables cung cấp

Làm cách nào tôi có thể tìm kiếm trong phân trang laravel?

Làm cách nào để sử dụng chức năng tìm kiếm với phân trang trong Laravel PHP Framework? .
Đầu tiên, chúng ta phải gọi phương thức link[] sẽ hiển thị các liên kết đến các trang còn lại trong tập kết quả. .
Bây giờ, để đếm tổng số trang, hãy viết câu lệnh sau
Sau đó, chúng tôi sẽ thêm thanh Tìm kiếm

Làm cách nào để sử dụng bộ lọc tìm kiếm trong Laravel 8?

Các bước sau đây có liên quan để tạo bộ lọc và sắp xếp cho bảng quản trị Laravel của chúng tôi. .
Triển khai bộ lọc tìm kiếm. 1. 1 Thêm trường tìm kiếm trong chế độ xem chỉ mục. 1. 2 Thêm bộ lọc nơi điều kiện trên bộ điều khiển
Thực hiện sắp xếp cột. 2. 1 Thêm một liên kết sắp xếp trong dạng xem. 2. 2 Thêm thứ tự theo trong Truy vấn

Làm cách nào để tìm kiếm dữ liệu trong Laravel 8?

Thêm thuộc tính giá trị và đặt nó thành khóa tìm kiếm trong nội dung yêu cầu. .

Chủ Đề