Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/laravel-admin-extensions/admin-config
Manage your database configuration as profiles
https://github.com/laravel-admin-extensions/admin-config
Last synced: 6 days ago
JSON representation
Manage your database configuration as profiles
- Host: GitHub
- URL: https://github.com/laravel-admin-extensions/admin-config
- Owner: laravel-admin-extensions
- License: mit
- Created: 2019-03-18T08:02:09.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-10-09T08:02:09.000Z (about 5 years ago)
- Last Synced: 2024-09-17T06:24:55.404Z (about 2 months ago)
- Language: PHP
- Homepage:
- Size: 270 KB
- Stars: 21
- Watchers: 1
- Forks: 6
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-laravel-admin - admin-config - 基于laravel-admin的数据库配置管理工具,仅通过配置文件就可生成整个表单,支持使用tab页对配置项进行分组 (扩展包 / 工具类扩展包)
README
admin-config
======基于[laravel-admin](https://github.com/z-song/laravel-admin)的数据库配置管理工具,仅通过配置文件就可生成整个表单,支持使用tab页对配置项进行分组。
![Untitled](https://ws4.sinaimg.cn/large/006tKfTcgy1g194izbkghg312y0mr1ky.gif)
## 安装:
步骤一、使用 composer 安装
```
composer require fourn/admin-config
```步骤二、执行数据库迁移
```php
php artisan migrate
```步骤三、发布配置文件
```
artisan vendor:publish --tag=admin-config
```## 使用方法:
第一步:在配置文件中加入配置组及配置项,详细参考下面的"配置文件语法"
第二步:使用laravel中的config函数
```
// 获取一组
config('sample')
// 获取一项
config('sample.value')
```## 其他:
你可以生成后台菜单:
```php
php artisan admin:import admin-config
```或者直接访问:
http://your-host/admin/admin-config
扩展配置:
```php
'extensions' => [
'admin-config' => [
'title'=>'AdminConfig',
'description'=>'Manage your profiles as profiles',
'action'=>' ',
],
],
```## 配置文件语法:
配置文件发布后路径为:config/admin-config.php
定义配置组:
```php
'admin_config_groups' => [
// 配置组值 => tab选项卡显示文字
'sample' => 'sample-name',
// 省略写法,等同于 'sample2' => 'sample2'
'sample2'
],
```定义配置项:
```php
// 配置组名作为键,可以使用config('sample')访问一组值
'sample' => [
// 默认情况写法,以下等同于 'value' => ['label'=>'value', 'type'=>'test']
// 可以使用config('sample.value')访问其值
'value',
// 支持配置链式调用,以下将执行$form->text('value1')->help('help content')->default('default value')
'value1'=>['help'=>'help content', 'default'=>'default value'],
// 支持几乎所有Encore\Admin\Form\Field对象的链式调用方法,非链式调用的值将在Field实例化时作为参数传入
// 以下将执行$form->test('value2', 'label text')->placeholder('typing...')->rules('required')
'value2'=>['label text', 'placeholder'=>'typing...', 'rules'=>'required'],
// 需要定义字段类型,type键值不可省略
'value3'=>['type'=>'select', 'select label text', 'options'=>['option1'=>'option1', 'option2'=>'option2']],
'value5'=>['type'=>'checkbox', 'options'=>['foo'=>'foo', 'bar'=>'bar']],
'value6'=>['type'=>'ip'],
'value7'=>['type'=>'mobile'],
'value8'=>['type'=>'color'],
'value9'=>['type'=>'time', 'format'=>'HH:mm'],
// 范围类型的字段会分别存储为两个配置项,'sample.value10.start' 及 'sample.value10.end'
'value10'=>['type'=>'dateRange', 'dateRange label text'],
'value11'=>['type'=>'number', 'min'=>100, 'default'=>100],
'value12'=>['type'=>'rate'],
// 支持没有参数的链式调用,以下将执行$form->image('value13')->uniqueName()
'value13'=>['type'=>'image', 'uniqueName'],
'value14'=>['type'=>'file', 'uniqueName'],
'value17'=>['type'=>'editor'],
'value18'=>['type'=>'switch'],
'value19'=>['type'=>'tags'],
// 以下一对多关系将被自动转化为逗号隔开的数据存入数据库
'value4'=>['type'=>'listbox', 'options'=>['foo'=>'foo', 'bar'=>'bar']],
'value15'=>['type'=>'multipleImage', 'removable', 'uniqueName'],
'value16'=>['type'=>'multipleFile', 'removable', 'uniqueName'],
],
// 对应配置组值
'sample2' => [
'value'
]
```## 效果示例:
配置文件自动转化为表单:
![Snipaste_2019-03-18_16-14-05](https://ws2.sinaimg.cn/large/006tKfTcgy1g171q2oy8vj31b70qjwgd.jpg)
数据库:
![Snipaste_2019-03-18_16-21-44](https://ws1.sinaimg.cn/large/006tKfTcgy1g171q8ri68j30uk0fa411.jpg)