Cái gì có thể tìm kiếm được trong laravel?

Nếu không, chúng ta có $searchTerm hợp lệ và một mảng $attributes hợp lệ, chúng ta phải thực hiện a bằng cách chuyển một bao đóng cho phương thức where. Bên trong phần đóng, chúng tôi duyệt qua $attributes bằng cách sử dụng vòng lặp foreach. Hãy nhớ rằng, như chúng ta đã thấy trong , chúng ta có thể tìm kiếm các thuộc tính trong mô hình có liên quan. Vì vậy, để giải quyết trường hợp sử dụng này, chúng ta sẽ thực hiện mệnh đề orWhere khác nhau tùy thuộc vào loại thuộc tính. Vì lý do đó chúng tôi đang sử dụng

Đội Spatie vẫn cháy hàng với các gói mới. Tuần này họ đã phát hành một cái khác có tên là Laravel Searchable, được tạo chủ yếu bởi AlexVanderbist. Tôi đã tự mình thử và có thể cho bạn xem bản demo, cùng với ý kiến ​​​​của tôi

Laravel có thể tìm kiếm là gì

Gói Spatie làm cho việc tìm kiếm trong các mô hình trở thành một nhiệm vụ dễ dàng mà không cần phụ thuộc bên ngoài

Ưu điểm chính, như tôi đã thử nghiệm, là khả năng thực hiện tìm kiếm lớn trong tất cả cơ sở dữ liệu của dự án, chỉ định nhiều hơn một mô hình để tìm kiếm trong

Đây là một mã tìm kiếm ví dụ từ Bộ điều khiển

$searchResults = [new Search[]]
   ->registerModel[User::class, 'name']
   ->registerModel[BlogPost::class, 'title']
   ->perform['john'];

Trông khá đơn giản và dễ đọc phải không?

Bạn sẽ nói rằng không cần gói "tìm kiếm" khác khi chúng ta có Laravel Scout, Algolia, ElasticSearch và những thứ khác, phải không?

  1. Sự khác biệt chính với Scout là cái này không có phụ thuộc bên ngoài
  2. laravel-searchable không cố gắng thay thế Scout. Cả hai gói đều có vị trí của chúng. Đưa ra quyết định của riêng bạn những gì bạn cần trong dự án của bạn

laravel-searchable không cố gắng thay thế Scout. Cả hai gói đều có vị trí của chúng. Đưa ra quyết định của riêng bạn những gì bạn cần trong dự án của bạn

– Freek Van der Herten [@freekmurze] ngày 27 tháng 12 năm 2018

Dự án nhỏ ví dụ. sự chuẩn bị

Để kiểm tra gói, tôi đã tạo một Laravel 5 mới. 7 [mã sẽ có sẵn trên GitHub - liên kết ở cuối bài viết] với hai bảng cơ sở dữ liệu. danh mục và công ty

Schema::create['categories', function [Blueprint $table] {
    $table->increments['id'];
    $table->string['name'];
    $table->timestamps[];
}];

Schema::create['companies', function [Blueprint $table] {
    $table->increments['id'];
    $table->string['name']->nullable[];
    $table->unsignedInteger['category_id'];
    $table->foreign['category_id']->references['id']->on['categories'];
    $table->timestamps[];
}];

Ngoài ra, đã thêm một số dữ liệu cho cả hai bảng, sử dụng make. auth để tạo một mẫu Bootstrap đơn giản và kết thúc với danh sách các công ty này

{{ $searchResult->title }} @endforeach @endforeach
.. Some more main Blade template code ...

Và đây là nó trông như thế nào

Như bạn có thể thấy, chỉ có một Công ty được trả lại chứ không phải Danh mục. Bây giờ, hãy thử một truy vấn có cả hai kết quả

Đây là cách cấu trúc $searchResults trông như thế nào nếu chúng ta thực hiện dd[]

Chúng tôi đã đề cập đến cách sử dụng cơ bản, nhưng có một vài thứ có thể tùy chỉnh hơn trong Laravel Searchable. Bạn có thể đọc chúng trong tài liệu chính thức

Làm cách nào để sử dụng chức năng tìm kiếm trong laravel?

Làm cách nào để tìm kiếm chức năng trong laravel? . Cách tốt nhất để tìm kiếm một chức năng trong laravel có thể được hoàn thành trong vòng 2 bước đơn giản. Bước 1. Sửa đổi phương thức chỉ mục trong bộ điều khiển dự án . Bước 2. thêm biểu mẫu sẽ gửi yêu cầu tới bộ điều khiển trong chỉ mục .

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 từ cơ sở dữ liệu trong laravel?

Bước 5. Cơ sở dữ liệu truy vấn cho các cụm từ được tìm kiếm .
Tuyến đường. get['/', function[] {
// Kiểm tra đầu vào tìm kiếm
nếu [yêu cầu ['tìm kiếm']] {
$người dùng = Người dùng. trong đó ['tên', 'thích', '%'. yêu cầu ['tìm kiếm']. ' %']->get[];
} khác {
$người dùng = Người dùng. tất cả[];
quay lại chế độ xem['chào mừng']->with['người dùng', $người dùng];

find[] trong laravel là gì?

Như chúng ta đã biết, phương thức find[] trong Laravel có thể được sử dụng bởi bất kỳ người dùng nào cùng với một mảng các khóa chính và nó sẽ trả về một tập hợp các bản ghi phù hợp từ . Ví dụ, $student = Sinh viên. tất cả các []; . . For example, $student = Students::all []; With the help of the above data, we can get the details of all the students.

Chủ Đề