qmrp/laravel-opensearch

Laravel7的阿里云开放搜索

1.2 2021-01-21 03:29 UTC

This package is auto-updated.

Last update: 2024-09-21 12:47:19 UTC


README

阿里云开放搜索桥接器用于Laravel 7

安装

该包可以通过Composer安装。

composer require qmrp/laravel-opensearch

一旦安装了OpenSearch,您需要注册服务提供者。打开 config/app.php 并将以下内容添加到 providers 键。

  • 'Qmrp\Opensearch\OpensearchServiceProvider'

如果您喜欢,可以在 config/app.php 文件的 aliases 键中注册 Opensearch 门面。

  • 'Opensearch' => 'Qmrp\Opensearch\Facades\Opensearch'

配置

Opensearch 需要连接配置。

要开始,您需要发布所有供应商资产

$ php artisan vendor:publish

这将在您的应用程序中创建一个 config/opensearch.php 文件,您可以修改它以设置配置。同时,请确保检查本包在版本之间的原始配置文件的变化。

有两个配置选项

默认连接名称

此选项('default')是您可能指定要使用哪个以下连接作为所有工作的默认连接的地方。当然,您可以使用多个连接同时使用管理器类。此设置的默认值是 'main'

Opensearch 连接

此选项('connections')是您为应用程序设置的每个连接的地方。示例配置已包含,但您可以添加您想要的任意数量的连接。

用法

OpensearchManager

这是最有兴趣的类。它绑定到 ioc 容器中的 'opensearch',可以使用 Facades\Opensearch 门面访问。此类通过扩展 AbstractManager 实现 ManagerInterface 接口。接口和抽象类都是我 Laravel Manager 包的一部分,因此您可能想查看有关如何在 该存储库 中使用管理器类的文档。请注意,返回的连接类始终是 CloudsearchSearch 的实例。

Facades\Opensearch

此门面将动态地将静态方法调用传递到 ioc 容器中的 'opensearch' 对象,默认情况下是 OpensearchManager 类。

OpensearchServiceProvider

此类不包含有意义的公共方法。此类应添加到 config/app.php 中的提供者数组。此类将设置 ioc 绑定。

实际示例

在这里,您可以看到如何简单使用此包的示例。开箱即用,默认适配器是 main。在配置文件中输入您的身份验证和主机详细信息后,它将正常工作

use Qmrp\Opensearch\Facades\Opensearch;
// you can alias this in config/app.php if you like

// Add a new app to search
// $opensearch = Opensearch::connection('main');
// $opensearch = Opensearch::connection('app2');
$opensearch = Opensearch::connection();
$opensearch->setFormat('json');
$opensearch->setQueryString('default:阿里云');

$result = $opensearch->search();

OpenSearch 管理器将表现得像 CloudsearchSearch 类。如果您想调用特定的连接,可以使用 connection 方法

有关如何使用我们在此幕后调用的 CloudsearchSearch 类的更多信息,请查看http://docs.aliyun.com/#/opensearch/sdk/php&sdk-doc-cloudsearchsearch 上的文档,以及https://github.com/GrahamCampbell/Laravel-Manager#usage 上的管理器类。

许可

Laravel 阿里云 OpenSearch 采用 MIT 许可协议 (MIT) 许可。