Menu

94.全文搜索(一)

本节说明

  • 对应视频教程第 94 小节:First Class Search: Scout Review

本节内容

我们下一个功能是对话题内容的全文搜索。我们将会用到 ScoutAlgolia 这两个工具。首先我们安装 Scout:

$ composer require laravel/scout

接着使用 Artisan 命令vendor:publish生成 Scout 的配置文件。这个命令会在你的config目录下生成scout.php配置文件:

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

我们还要配置模型索引:
forum\app\Thread.php

<?php

namespace App;

use App\Events\ThreadReceivedNewReply;
use Illuminate\Database\Eloquent\Model;
use Laravel\Scout\Searchable;

class Thread extends Model
{
    use RecordsActivity,Searchable;
    .
    .

然后我们安装 Algolia:

composer require algolia/algoliasearch-client-php

我们在 Algolia 官网 注册账号,并按顺序添加账号相关配置:
file
forum.env

.
.
ALGOLIA_APP_ID=XXXXXX
ALGOLIA_KEY=XXXXXXXXXXXXXXXXXX
ALGOLIA_SECRET=XXXXXXXXXXXXXXXXXX

forum\config\scout.php

    .
    .
    'algolia' => [
        'id' => env('ALGOLIA_APP_ID', ''),
        'key' => env('ALGOLIA_KEY'),
        'secret' => env('ALGOLIA_SECRET', ''),
    ],

];

我们将已有话题导入到 Algolia:

$ php artisan scout:import 'App\Thread'

我们设置搜索话题的titlebody字段:
file
我们来尝试搜索:
file

本文章首发在 Laravel China 社区
上一篇 下一篇
讨论数量: 0
发起讨论


暂无话题~
刻意练习,每日精进。
0
点赞
84
浏览
0
讨论

维护者