algolia / laravel-scout-settings
将 Algolia 设置导入/导出到您的 Laravel Scout 项目
Requires
- algolia/algoliasearch-client-php: ^1.25
- laravel/scout: >=3.0
Requires (Dev)
- mikey179/vfsstream: ^1.6
- orchestra/testbench: ^3.4
- phpunit/phpunit: ^6.5
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
这有三个主要优点
- 您可以使用 VCS 版本控制配置
- 您可以轻松设置新环境或恢复备份
- 它允许您在推送之前以 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
需要帮助?
请随时在我们的 社区论坛 上发帖
贡献
欢迎贡献!