dwafdk / laravel-meilitools
用于Laravel Scout与MeiliSearch集成的额外工具
0.3.5
2023-04-04 07:36 UTC
Requires
- php: ^7.4|^8.0
- illuminate/validation: ^8.0|^9.0|^10.0
- meilisearch/meilisearch-php: >=0.24.0 <=0.26.0
Requires (Dev)
- brick/varexporter: ^0.3.5
- guzzlehttp/guzzle: ^7.4
- http-interop/http-factory-guzzle: ^1.2
- illuminate/support: ^8.69|^9.0|^10.0
- laravel/scout: ^9.0
- nesbot/carbon: ^2.63
- orchestra/testbench: ^6.26|^7.0|^8.0
- php-http/discovery: ^1.12
- phpunit/phpunit: ^9.4
Suggests
- brick/varexporter: Improves readability of console output for index details
README
此包的目的是简化MeiliSearch索引的配置,因此可以通过Laravel Scout使用高级过滤和排序,而无需手动操作它们的API。
目录
兼容性
安装
使用Composer安装此包
$ composer require dwarfdk/laravel-meilitools
配置
使用Artisan命令发布配置
$ php artisan vendor:publish --provider="Dwarf\MeiliTools\MeiliToolsServiceProvider"
通过config/meilitools.php
更改配置。
使用
此包提供命令和辅助工具,简化配置MeiliSearch索引的使用。
模型设置
通过实现合同提供的方法来设置模型的索引设置。
use Dwarf\MeiliTools\Contracts\Indexes\MeiliSettings; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\SoftDeletes; use Laravel\Scout\Searchable; class Article extends Model implements MeiliSettings { use Searchable; use SoftDeletes; /** * {@inheritdoc} */ public function meiliSettings(): array { // When using soft deletes '__soft_deleted' will automatically be added to filterable attributes. return ['filterableAttributes' => ['status']]; } }
可以在这里找到可用索引设置的完整列表:这里。
命令
以下命令可用:
meili:index:create
- 创建新的MeiliSearch索引
参数
index
: 索引名称
选项
--force
: 强制执行操作
meili:index:delete
- 删除MeiliSearch索引
参数
index
: 索引名称
meili:index:details
- 获取MeiliSearch索引的详细信息
参数
index
: 索引名称
meili:index:reset
- 重置MeiliSearch索引的设置
参数
index
: 索引名称
选项
--pretend
: 仅显示对索引所做的更改
meili:index:view
- 获取MeiliSearch索引的基本信息
参数
index
: 索引名称
选项
--stats
: 是否包含索引统计信息
meili:indexes:list
- 列出所有MeiliSearch索引
选项
--stats
: 是否包含索引统计信息
meili:model:details
- 获取MeiliSearch模型索引的详细信息
参数
model
: 模型类
meili:model:reset
- 重置MeiliSearch模型索引的设置
参数
model
: 模型类
选项
--pretend
: 仅显示对索引所做的更改
meili:model:synchronize
- 同步MeiliSearch模型索引的设置
参数
model
: 模型类
meili:model:view
- 获取MeiliSearch模型索引的基本信息
参数
model
: 模型类
选项
--stats
: 是否包含索引统计信息
选项
--pretend
: 仅显示对索引所做的更改
meili:models:synchronize
- 同步实现MeiliSearch索引设置的模型
选项
--pretend
: 仅显示对索引所做的更改--force
: 强制在生产环境中运行操作
示例
模型命令可以接受完整的类名和基本名称,后者使用配置的路径完成。
$ php artisan meili:model:details App\\Models\\Article
$ php artisan meili:model:details Article
$ php artisan meili:model:reset App\\Models\\Article
$ php artisan meili:model:reset Article
$ php artisan meili:model:synchronize App\\Models\\Article
$ php artisan meili:model:synchronize Article
$ php artisan meili:model:view App\\Models\\Article
$ php artisan meili:model:view Article
测试
可以通过composer或直接调用PHPUnit二进制文件来运行测试。
$ composer test
要运行带有代码覆盖的测试,请确保phpdbg
存在并可执行。
$ composer test:coverage $ open tests/_reports/index.html
职业
Dwarf A/S是一家位于丹麦哥本哈根的数字代理机构,成立于2000年1月1日。
我们一直在寻找新的才华,因此请查看我们的网站以了解职位空缺。
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。