[Laravel] ElasticSearchとLaravel Scoutで全文検索 (2) – Laravel Scoutセットアップ

ElasticSearchのセットアップができたので、ここからはLaravel側のセットアップ。

Laravel Scountの組み込み

Laravel Scout – Laravel – The PHP Framework For Web Artisans
https://laravel.com/docs/5.4/scout

Laravel Scout Elasticsearch Driver
https://github.com/ErickTamayo/laravel-scout-elastic

 

これでセットアップは完了。

ElasticSearchへ既存データ注入

公式ドキュメントで説明されている通り、Laravel Scoutを組み込んだ状態だと、Eloquentでレコード追加/更新/削除を行うとElasticSearchも併せて更新されるようになる。しかし、ElasticSearch組み込み時点で既に存在するレコードは手動でElasticSearchに流し込まないといけない。

というわけで、既存レコードをElasticSearchに流し込む。

ElasticSearchのインデックスを確認。

コントローラから検索してみる

記事本文に含まれる日本語の単語を入れてみると、検索されるものあり、されないものあり。どうも挙動がおかしい。おそらく日本語の処理が上手くいっていないのだろう。

Kuromojiのセットアップへ続く。