ubeeqo/laravel-scout-settings

将 Algolia 设置导入/导出到您的 Laravel Scout 项目

2.0.1 2018-05-29 12:45 UTC

This package is not auto-updated.

Last update: 2024-09-15 05:34:12 UTC


README

将 Algolia 设置、同义词和查询规则导入/导出到您的 Laravel Scout 项目。

管理设置的最简单方式通常是访问您的 Algolia 控制台,因为它有一个不错的用户界面,并且您可以直接在那里测试相关性。

一旦您调整了配置,您可能想将其添加到项目中。

此包为您的项目添加了两个 Laravel 命令

  • 一个用于将设置、同义词和查询规则保存到 JSON 文件中
  • 一个用于将所有内容推送到 Algolia

这具有三大优点

  1. 您可以使用 VCS 对配置进行版本控制
  2. 您可以轻松设置新环境或恢复备份
  3. 它允许您在推送之前以 JSON 格式自定义设置

安装

使用 composer 安装此包

composer require algolia/laravel-scout-settings

Laravel 5.5

如果您使用 Laravel 5.5,此包将利用 包自动发现 功能。注册命令不需要做更多。

Laravel 5.4 及之前版本

如果您使用的是旧版本的 Laravel,您必须将服务提供者添加到 config/app.php 中的 providers 数组。

Algolia\Settings\ServiceProvider::class,

用法

您现在将获得两个新的命令,它们都可在 artisan 中使用。它们都接受一个模型的全限定类名,就像 Laravel Scout 用于导入/清除数据一样。

以下示例假设您有一个 App\Contact 类,它使用 Searchable 特性。

注意:Scout 允许您使用 searchableAs() 方法自定义索引名称。此包将遵循此命名约定。

备份设置(项目 ⬅️ Algolia)

以下命令将所有设置和同义词从 App\Contact 的索引中导出到以下文件中

  • 设置resources/algolia-settings/index_name.json
  • 同义词resources/algolia-settings/index_name-synonyms.json
  • 查询规则resources/algolia-settings/index_name-rules
php artisan algolia:settings:backup "App\Contact"

注意,如果您想向文件名添加前缀(这是 v1 版本的默认行为),可以传递 --prefix 选项。

php artisan algolia:settings:backup "App\Contact" --prefix

推送设置(项目 ➡️ Algolia)

以下命令将读取 resources/algolia-settings/ 中文件的设置、同义词和查询规则,并将它们导入到 Algolia 的索引中。

php artisan algolia:settings:push "App\Contact"

您也可以像备份命令一样传递 --prefix 选项。

自定义目录

默认情况下,设置、规则和同义词被保存到 resources/algolia-settings。可以通过定义名为 ALGOLIA_SETTINGS_FOLDER 的环境变量来自定义此目录。例如,以下命令将所有索引资源保存到 resources/indexmeta

ALGOLIA_SETTINGS_FOLDER=indexmeta php artisan algolia:settings:backup

测试

composer test

需要帮助?

请随时在我们的 社区论坛 上发帖。

贡献

欢迎贡献!