c4uno/config-database

从数据库获取并合并配置到Laravel/Lumen 5

安装: 4,206

依赖: 0

建议者: 0

安全: 0

类型:项目

1.0.2 2019-02-14 21:47 UTC

This package is auto-updated.

Last update: 2024-09-26 07:17:47 UTC


README

它从数据库读取配置值并将它们与配置文件合并。因此,您可以在运行时进行更改。

安装

composer require c4uno/config-database

Laravel < 5.3

将服务提供者添加到 config/app.php

    C4uno\ConfigDatabase\ConfigDatabaseServiceProvider::class,

发布迁移

artisan vendor:publish --provider="C4uno\ConfigDatabase\ConfigDatabaseServiceProvider" --tag="migrations"

发布配置

artisan vendor:publish --provider="C4uno\ConfigDatabase\ConfigDatabaseServiceProvider" --tag="config"

Lumen

bootstrap/app.php 中注册服务提供者

$app->register(C4uno\ConfigDatabase\ConfigDatabaseServiceProvide);

使用

默认情况下,该包使用 appemails 文件中的配置。如果您想使用其他文件,请修改 config/config_database.php 中的 sections 键下的列表。

configs 表添加一行新数据,包含配置键、数据类型(请参阅 C4uno\ConfigDatabase\Models\Config 类以获取可用的数据类型列表)。例如,要更改 c4uno 配置文件中 subdomains.panel 的值,您必须插入以下行

INSERT INTO configs VALUE (1, 'c4uno.subdomains.panel','panel.local.4uno.org','string', CURRENT_DATE(), CURRENT_DATE())

实现

  • config() 助手必须继续工作
  • 配置文件中的值必须是默认值。
  • 具体说明哪些配置应该在数据库中。因为配置不应总是可用。
  • 具体说明应保存设置的表名。
  • 支持更多数据类型。数组以json格式保存,因此可以存储异构元素。
  • 与 Laravel < 5.7 和 Laravel 5.1 兼容

待办事项

  • 允许长值(超过255)。
  • 注意性能。使用缓存。