thiagoprz / vegvisir
Vegvisir - Laravel 搜索索引器
Requires
- php: ^8.1
- ext-json: *
- guzzlehttp/guzzle: ^7.0
- laravel/framework: 8.*||9.*
- spatie/data-transfer-object: ^3.7.3
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-05 23:53:11 UTC
README
目录
安装
使用composer在您的应用程序中安装它:composer require thiagoprz/vegvisir
配置
将选定的AdapterServiceProvider服务提供者安装到config/app.php(有关更多信息,请参阅适配器)
..
'providers' => [
...
\Thiagoprz\Vegvisir\VegvisirElasticSearchServiceProvider::class,
],
...
运行php artisan vendor:publish并输入您所需适配器的编号来发布配置(如果使用多个适配器,无需多次运行,只需选择其中一个即可)。
这将向config目录添加vegvisir.php文件。请注意,此配置包含针对应用程序中所有适配器的指令,如果您应用程序将使用多个适配器,则无需为每个适配器创建多个配置文件。
可用适配器
此包附带内置的适配器,可以根据您的需求轻松使用,无需任何自定义。当然,您也可以并且被鼓励构建自己的适配器以满足任何特定需求或如果您使用的是此处未列出的平台。
Elasticsearch
此适配器连接到Elasticsearch主机,并在您的模型发生更改时插入/更新/删除。
请遵循适配器仓库中的说明。
MongoDB
状态:开发中
此适配器连接到MongoDB,并在您的模型发生更改时插入/更新/删除。
请遵循适配器仓库中的说明。
创建您自己的适配器
该项目背后的主要思想是允许通过使用不同的数据库(通常是MySQL)作为搜索请求的入口点来增强Laravel应用程序。基于这个想法,这个仓库对任何希望在laravel应用程序中实现自己的搜索工具的人来说都很有用,通过遵循这些步骤创建适配器非常简单。
适配器包结构
- src/
- Adapters/
- CustomAdapter.php
- config/
- vegvisir.php
- Repositories/
- CustomRepository.php
- CustomServiceProvider.php
- Adapters/
路线图
- 尽可能实现多种适配器,以增强Laravel应用程序
¹ 引擎版本表示用于构建包的软件版本,根据第三方更改(特别是破坏性更改),此包可能不稳定或无法按预期工作。
贡献
测试
vendor/phpunit/phpunit/phpunit --configuration phpunit.xml tests
支持
问题
请随意在此包上创建问题,这将非常有帮助。我会尽快处理。
许可证
此包采用MIT许可证。