康尼特/齿轮

为 Laravel 提供设置和用户偏好设置库

1.13.0 2024-02-10 12:09 UTC

README

Tests Packagist Stable Version StyleCI Packagist downloads MIT Software License

此 Laravel 扩展包允许您管理和保存/检索 Laravel 应用程序中的设置和偏好设置。

  • 设置 是用户定义的值,适用于应用程序
  • 偏好设置 是用户定义的值,适用于特定用户

设置和偏好设置是分开管理的。默认情况下,值(值)保存到数据库(settingspreferences 表)并使用您应用程序配置的 缓存 进行缓存。

存储设置的底层可以完全替换,因此可以将它们存储在 MongoDB、ElasticSearch、Firebase、DynamoDB、S3 等任何其他地方。

Laravel 兼容性

安装

最低要求(截至 v1.13)是 PHP 8.1 和 Laravel 10.0

使用 composer 安装

composer require konekt/gears

服务提供者和别名(外观)将自动注册。

用法

设置通过一个键(字符串)来识别,并且需要注册才能使用。

注册设置

/** @var \Konekt\Gears\Registry\SettingsRegistry $settingsRegistry */
$settingsRegistry = app('gears.settings_registry');

$settingsRegistry->addByKey('mailchimp.api_key');

保存和检索设置

use Konekt\Gears\Facades\Settings;

// using the facade:
Settings::set('mailchimp.api_key', '123456789abcdef');
echo Settings::get('mailchimp.api_key');
// '123456789abcdef'

// using the service from the container:
$settings = app('gears.settings');
$settings->set('mailchimp.api_key', 'fbcdef');
echo $settings->get('mailgun.api_key');
// fbcdef

要本地运行整个 CI 作业套件: act -P ubuntu-latest=shivammathur/node:latest

更多选项和可能性在 文档 中详细说明。