lf / laravel-scout-elasticsearch
本包最新版本(v1.0)没有提供许可证信息。
Elastic 7.0 驱动程序适用于 Laravel Scout
v1.0
2020-07-08 15:03 UTC
Requires
- php: ^7.2.5
- elasticsearch/elasticsearch: ^5.0
- laravel/scout: ^7.0
Suggests
- elasticsearch/elasticsearch: Required to use the Elasticsearch engine (^7.0).
This package is not auto-updated.
Last update: 2024-09-26 11:59:51 UTC
README
这是基于 tamayo/laravel-scout-elastic 开发的适用于ElasticSearch7.0的laravel scout驱动。
由于ElasticSearch7.0 不支持type,因此修改了原来的驱动,将原来的type改为统一的_doc。将searchableAs返回的字符串数据视为一个index,每个表都可以设置不同的index来实现多index;如果searchableAs返回null,则使用scout配置中的index存储该模型数据。也可以改变MANY_MODEL的值来支持将多个模型数据存储到一个index。
增加了对Elasticsearch nested类型的搜索。只需在模型中重写getNested方法,返回一个nested搜索时所需的path数组,则可以完成对nested类型的搜索。
增加了搜索数据恢复模型后的排序。
使用环境:
laravel 7.0
laravel-scout 7.0
elasticsearch 7.0
elasticsearch(PHP) 5.0
内容
安装
您可以通过composer安装此包
composer require lf/laravel-scout-elasticsearch
在Scout配置文件中配置ElasticSearch
在使用之前必须确保ElasticSearch已经启动并且已经创建好相关的index
// config/scout.php
// Set your driver to elasticsearch
'driver' => env('SCOUT_DRIVER', 'ElasticSearch'),
...
'elasticsearch' => [
'index' => env('ELASTICSEARCH_INDEX', 'laravel'),
'hosts' => [
env('ELASTICSEARCH_HOST', 'https://'),
],
],
...
用法
模型中
use ScoutEngines\ElasticSearchEngine\Search;
use Search
搜索用法请参考laravel官方scout的用法
致谢
许可证
MIT许可(MIT)。