PHPackages                             tbryan24/laravel-scout-elastic - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. tbryan24/laravel-scout-elastic

ActiveLibrary[API Development](/categories/api)

tbryan24/laravel-scout-elastic
==============================

The scout driver of elasticsearch with ik and pinyin

095PHP

Since Jun 17Pushed 3y ago1 watchersCompare

[ Source](https://github.com/tbryan24/laravel-scout-elastic)[ Packagist](https://packagist.org/packages/tbryan24/laravel-scout-elastic)[ RSS](/packages/tbryan24-laravel-scout-elastic/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

laravel-scout-elastic（适用于中文搜索的scout扩展包）
=======================================

[](#laravel-scout-elastic适用于中文搜索的scout扩展包)

基于 改造

### 1、composer安装

[](#1composer安装)

安装前需要提前安装官方scout扩展[https://learnku.com/docs/laravel/8.x/scout/9422和elasticsearch的php扩展，具体的scout配置说明见官方文档](https://learnku.com/docs/laravel/8.x/scout/9422%E5%92%8Celasticsearch%E7%9A%84php%E6%89%A9%E5%B1%95%EF%BC%8C%E5%85%B7%E4%BD%93%E7%9A%84scout%E9%85%8D%E7%BD%AE%E8%AF%B4%E6%98%8E%E8%A7%81%E5%AE%98%E6%96%B9%E6%96%87%E6%A1%A3)

首先安装php elasticsearch扩展包(用7的包)

```
composer require elasticsearch/elasticsearch:v7.*
```

然后，安装laravel官方 Scout扩展：

```
composer require laravel/scout
```

Scout 安装完成后，使用 vendor:publish Artisan 命令来生成 Scout 配置文件。这个命令将在你的 config 目录下生成一个 scout.php 配置文件。

php artisan vendor:publish --provider="Laravel\\Scout\\ScoutServiceProvider"

然后安装：

```
composer require tbryan24/laravel-scout-elastic
```

### 2、注册服务提供者

[](#2注册服务提供者)

扩展包里有一个服务提供者，使用包的时候需要在config/app.php的providers中注册服务提供者

```
Tbryan24\LaravelScoutElastic\ElasticScoutProvider::class
```

### 3、模型配置可搜索

[](#3模型配置可搜索)

在搜索的模型中添加`Tbryan24\LaravelScoutElastic\EsSearchable` 该trait继承的是`Laravel\Scout\Searchable` 。这个 trait 会注册一个模型观察者来保持模型和所有驱动的同步：

```
