ホームページ  >  記事  >  PHPフレームワーク  >  Laravel 開発: Laravel Scout と Meil​​isearch を使用して全文検索を実装するにはどうすればよいですか?

Laravel 開発: Laravel Scout と Meil​​isearch を使用して全文検索を実装するにはどうすればよいですか?

PHPz
PHPzオリジナル
2023-06-14 12:01:341405ブラウズ

インターネットの発展に伴い、全文検索はますます多くの Web サイトやアプリケーションにとって不可欠な機能になりました。 Laravelフレームワークでは、Laravel ScoutとMeilisearchを統合することで、効率的かつ高速な全文検索機能を実装できます。

1.Laravel Scout とは何ですか?

Laravel Scout は、Laravel アプリケーションに全文検索機能を提供するために Laravel が公式に提供するプラグインです。使いやすく、Algolia、Elasticsearch、Meilisearch などの複数の検索エンジンをサポートしています。

2.メイリサーチとは何ですか?

Meilisearch は、大規模なデータ セットに迅速に拡張できる、高速で安全なオープン ソースの全文検索エンジンです。他の検索エンジンと比較して、Meilisearch は検索速度が速く、インデックス スペースが小さいと同時に、一連の使いやすいクエリとフィルタリング オプションを提供します。

3. Laravel Scout と Meil​​isearch を使用して全文検索を実装するにはどうすればよいですか?

  1. Laravel Scout と Meil​​isearch をインストールする

まず、Laravel Scout と Meil​​isearch を Laravel アプリケーションにインストールする必要があります。 Laravel 8 を例として、Composer を使用してインストールできます。

composer require laravel/scout meilisearch/meilisearch-php
  1. Laravel Scout の構成

インストールが完了したら、Laravel で Laravel を構成する必要もあります。アプリケーションスカウト。 config/app.php ファイルを開き、Laravel Scout プロジェクトのサービスプロバイダーをプロバイダー配列に追加します:

'providers' => [
    // ...
    LaravelScoutScoutServiceProvider::class,
],

次に、.env ファイルでデータベース情報と Meil​​isearch 情報を構成します:

SCOUT_DRIVER=meilisearch
MEILISEARCH_HOST=http://localhost:7700
MEILISEARCH_KEY=masterKey
MEILISEARCH_HTTP_CLIENT=meilisearch
  1. モデルとインデックスの作成

次に、Laravel アプリケーションで全文検索用のモデルを作成し、モデルに検索インデックスを設定する必要があります。たとえば、Article という名前のモデルを作成できます:

php artisan make:model Article -m

モデルの作成中に、データベース移行ファイルが作成されます。移行ファイル内のモデルに検索インデックスを追加する必要があります:

Schema::create('articles', function (Blueprint $table) {
    $table->id();
    $table->string('title');
    $table->text('body');
    $table->timestamps();

    $table->softDeletes();
});

// 添加搜索索引
IlluminateSupportFacadesSchema::table('articles', function ($table) {
    $table->text('searchable')->nullable();
});

// 创建搜索索引
IlluminateSupportFacadesArtisan::call('scout:import', ['model' => AppModelsArticle::class]);

移行ファイルに検索インデックスを追加した後、Laravel Scout がフルテキストのインデックスを使用できるようにモデルを更新する必要があります。 search:

use LaravelScoutSearchable;

class Article extends Model
{
    use Searchable;
}
  1. 全文検索の実行

ここまでで、Laravel Scout と Meil​​isearch を使用して全文検索を実装するための基本的な構成が完了しました。全文検索を実行するには、Laravel Scout が提供するグローバル検索メソッドを使用できます。

$articles = Article::search('搜索关键词')->get();

このメソッドを通じて、関連する記事を迅速かつ効率的に取得し、ユーザー エクスペリエンスを向上させることができます。

4. 概要

Laravel Scout と Meil​​isearch は、高速で正確な検索機能を実現するのに役立つ強力で効率的な全文検索ツールのペアです。ユーザーのニーズを満たし、ユーザー エクスペリエンスを向上させるために必要なのは、簡単な構成と呼び出しだけです。

以上がLaravel 開発: Laravel Scout と Meil​​isearch を使用して全文検索を実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。