algolia/laravel-scout-settings

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

2.0.1 2018-07-30 16:22 UTC

This package is auto-updated.

Last update: 2024-09-22 22:40:48 UTC


README

已弃用:请使用 Scout Extended - https://github.com/algolia/scout-extended 替代。

Laravel Scout Settings

将 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

需要帮助?

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

贡献

欢迎贡献!