antto1/laravel-admin-ext-configx 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

antto1/laravel-admin-ext-configx

Composer 安装命令:

composer require antto1/laravel-admin-ext-configx

包简介

laravel-admin extension configx

README 文档

README

Installation

need to install laravel-admin-ext/config first, see https://github.com/laravel-admin-extensions/config

Then run :

$ composer require antto1/laravel-admin-ext-configx

Then run:

$ php artisan admin:import configx

Add a tabs config in config/admin.php:

    'extensions' => [
        'configx' => [
            // Set to `false` if you want to disable this extension
            'enable' => true,
            'tabs' => [
                'base' => '基本设置',
                'shop' => '店铺设置',
                'uplaod' => '上传设置',
                'image' => '' // if tab name is empty, get from trans : trans('admin.configx.tabs.image'); tab名称留空则从翻译中获取
            ],
            // Whether check group permissions.
            //if (!Admin::user()->can('confix.tab.base')) {/*hide base tab*/ } .
            'check_permission' => false
        ],
    ],

Usage

Open http://your-host/admin/configx/edit

Demo

You can click "+" to config tabs :

add an new config key

step 1 Select config type from ['base']

step 2 Select form-element type from ['normal', 'date', 'time', 'datetime', 'image', 'yes_or_no', 'number', 'rate', 'editor', 'radio_group' ,'checkbox_group', 'select']... and so on

step 3 If you selected form-element type is ['radio_group' ,'checkbox_group', 'select'] ,you need inupt [options] :

just text:

text1
text2
...

and key-text:

key1 : text1
key2 : text2
...

or load from ulr:

options_url:/api/mydata

If you selected form-element type is textarea , you can config it rows:3 , default is 5.

If you selected form-element type is table, rows / cols is needed :

base.some_key

rows: 4
cols: 4

This wiil build a table like below :

/*
|-------------------------------------------------------------------------------------
|  r_label\ c_labe |       c_label1      |        c_label2     |      c_label3       |  ⬅Col labels
|-------------------------------------------------------------------------------------
|     r_label1     |  base.some_key_1_1  |  base.some_key_1_2  |  base.some_key_1_3  |
|-------------------------------------------------------------------------------------
|     r_label2     |  base.some_key_2_1  |  base.some_key_2_2  |  base.some_key_2_3  |
|-------------------------------------------------------------------------------------
|     r_label3     |  base.some_key_3_1  |  base.some_key_3_2  |  base.some_key_3_3  |
|-------------------------------------------------------------------------------------

    Row labels

You can edit labels as you want.

Each <td> has a key , base.some_key_[0]_[0] to base.some_key_[rows-1]_[cols-1] . (from 0 to length -1 )

So, you can chang a label <td> to input :

|-------------------------------------------------------------------------------------
|  r_label\ c_labe |       c_label1      |        c_label2     |  base.some_key_0_3  |  ⬅ [c_label3] change to [base.some_key_0_3]
|-------------------------------------------------------------------------------------     , we can input here .
|     r_label1     |  base.some_key_1_1  |  base.some_key_1_2  |  base.some_key_1_3  |      (可以把label 换成输入元素)
|-------------------------------------------------------------------------------------
|     r_label2     |  base.some_key_2_1  |  base.some_key_2_2  |  base.some_key_2_3  |
|-------------------------------------------------------------------------------------
| trans.sometext   |  base.some_key_3_1  |     hello world!    |  base.some_key_3_3  |
|-------------------------------------------------------------------------------------
          ↑                                           ↑
          ↑                           [base.some_key_3_2] change to [hello world!]
          ↑                              , we can not input here any more ,
          ↑                           it wiil just show label text 'hello world!' .
          ↑                              (也可以把输入元素换成仅显示文字)

  get text from trans
trans("admin.configx.base.some_key.sometext")
显示文字时可以从翻译获取文字,样式 `trans.sometext`
其中 sometext 为翻译的key



note : if text = key or text = '' ,render as input form element , otherwise just show the text you leave.

//if text is trans.sometext , get from trans : trans("admin.configx.{$tab}.{$tablekey}.{$sometext}")

总结 : 如果输入的字符串与td默认key一样或输入的字符串为空,这个位置将是一个可输入的表单元素,否则就显示原样你输入的字符串 .


*/
Add a lang config in `resources/lang/{zh-CN}/admin.php`

```php
'configx' => [
        'new_config_type' => '配置类型',
        'new_config_key' => '配置key',
        'new_config_name' => '配置名称',
        'new_config_element' => '配置表单元素',
        'new_config_help' => '配置help',
        'new_config_options' => '配置扩展项',
        'header' => '网站设置',
        'desc' => '网站设置设置',
        'element' => [
           'normal' => '默认',
            'textarea' => '文本域',
            'date' => '日期',
            'time' => '时间',
            'datetime' => '日期时间',
            'password' => '密码'
            'image' => '图片',
            'multiple_image' => '多图',
            'file' => '文件',
            'multiple_file' => '多文件',
            'yes_or_no' => '是或否',
            'editor' => '编辑器',
            'radio_group' => '单选框组',
            'checkbox_group' => '多选框组',
            'number' => '数字',
            'rate' => '比例',
            'select' => '下拉框',
            'tags' => '标签',
            'icon' => '图标',
            'color' => '颜色',
            'table' =>'表格',
            'listbox' => '左右多选框',
            'multiple_select' => '下拉多选',
            'map' => '地图'
        ],
    ],
'yes' => '是',
'no' => '否'

if you need add a new config tab, chang it in config/admin.php.

After add config in the panel, use config($key) to get value you configured.

License

Licensed under The MIT License (MIT).

antto1/laravel-admin-ext-configx 适用场景与选型建议

antto1/laravel-admin-ext-configx 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 234 次下载、GitHub Stars 达 1, 最近一次更新时间为 2020 年 03 月 22 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「extension」 「laravel-admin」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 antto1/laravel-admin-ext-configx 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 antto1/laravel-admin-ext-configx 我们能提供哪些服务?
定制开发 / 二次开发

基于 antto1/laravel-admin-ext-configx 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 234
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 7
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2020-03-22