这里运用的是Laravel框架,工具是PhpStorm.
1、前往 https://www.algolia.com/ 注册账号,可以使用免费版,当然你也可以买一个,然后在账户的API Keys菜单获取Application ID和Admin API Key,后面会用到的
2、
1 | composer require algolia/algoliasearch-client-php |
1 | 在composer.json的require加入以下2条 |
3、运行 composer install(若不行,删除composer.lock后再运行),Scout 安装完成后,使用 vendor:publish
Artisan 命令来生成 Scout 配置文件。这个命令将生成 scout.php
配置文件到你的 config
目录:
1 | php artisan vendor:publish --provider="Laravel\Scout\ScoutServiceProvider" |
4、将scout.php中algolia的两个值ALGOLIA_APP_ID、ALGOLIA_SECRET复制到.env文件 ,并赋值相应的Application ID和Admin API Key(不要引号,14 天过期)
5、运行 php artisan vendor:publish --provider=“Laravel\Scout\ScoutServiceProvider”
--------------------------------上面按步骤操作,下面涉及到逻辑方法
最后,在你想要做搜索的模型中添加 Laravel\Scout\Searchable
trait。这个 trait 会注册一个模型观察者来保持模型和搜索驱动的同步:
1 | <?php |
Scout 提供了 Artisan 命令 import
用来导入所有已存在的记录到搜索索引:
1 | php artisan scout:import "App\Post"(空间\类) |
执行搜索:
1 | $orders = App\Order::search('Star Trek')->get(); |
需建立方法HomeController下建立search方法,填写 “执行搜索” 还有添加入模板页面