andy87/yii2-builder

PHP库,用于Yii2 - 由and_y87开发

dev-master 2024-08-12 08:45 UTC

This package is auto-updated.

Last update: 2024-09-12 09:03:23 UTC


README

!正在开发中!

Yii2 Builder - Yii2框架Gii模块的扩展,简化文件生成。

目标:创建简单快捷的文件生成工具。

内容

安装

要求

  • php >=8.0
  • Yii2

Composer

将包添加到项目中

使用:控制台命令。(推荐)

  • 使用本地安装的composer
composer require andy87/yii2-builder
  • 使用composer.phar
php composer.phar require andy87/yii2-builder

接下来: 更新依赖 composer install

使用:`composer.json` 文件

打开文件 composer.json
require 部分添加以下行
"andy87/yii2-builder": "*"
接下来: 更新依赖 composer install

- - - - -

在配置文件 config/web-local.php/frontend/config/main-local.php 中配置gii扩展

use andy87\yii2\builder\components\Builder;

$config['modules']['gii'] = [
        'class' => yii\gii\Module::class,
        'generators' => [
            Builder::ID => [
                'class' => Builder::class,
                'pathCache' => '@frontend/runtime/cache-yii2-builder/',
            ]
        ]
    ];

使用

要使用扩展,请进入 Gii 部分,并选择 Builder 生成器。

Builder 部分中可用

  1. 描述新系统实体
  2. 编辑现有实体

在创建/编辑实体时可用

  • 实体名称
  • 实体描述
  • 设置实体字段
    [_] 字段名称
    [_] 评论
    [_] 字段类型(string, integer, text, date, datetime, time, boolean, float)
    [_] 字段长度
    [_] 默认值
    [_] 必填
    [_] 外键
  • 设置文件生成过滤器
 [_] common/
     [_] models/sources/{{PascalCase}}Source
     [_] models/sources/{{PascalCase}}
     [_] repository/{{PascalCase}}Repository
     [_] service/{{PascalCase}}Service
     [_] tests/unit/services/{{PascalCase}}Service  
 
 [_] console/
     [_] models/items/{{PascalCase}}  
     [_] repository/{{PascalCase}}Repository  
     [_] service/{{PascalCase}}Service  
 
 [_] backend/
     [_] models/items/{{PascalCase}}  
     [_] repository/{{PascalCase}}Repository  
     [_] service/{{PascalCase}}Service  
     [_] controllers/{{PascalCase}}Controller  
     [_] views/{{kebab-case}}/
         [_] list  
         [_] create  
         [_] update  
         [_] view  
         [_] _form  
     [_] resources/{{kebab-case}}/
         [_] {{PascalCase}}ListResources  
         [_] {{PascalCase}}CreateResources  
         [_] {{PascalCase}}UpdateResources  
         [_] {{PascalCase}}ViewResources  
     [_] tests/
         [_] service/{{PascalCase}}ServiceTest  
         [_] functional/{{PascalCase}}Cest  
         [_] unit/service/{{PascalCase}}ServiceTest
 
 [_] frontend/
     [_] models/items/{{PascalCase}}  
     [_] repository/{{PascalCase}}Repository  
     [_] service/{{PascalCase}}Service  
     [_] controllers/{{PascalCase}}Controller  
     [_] resources/{{kebab-case}}/
         [_] <Item>ListResources  
         [_] <Item>ViewResources  
     [_] views/{{kebab-case}}/
         [_] list  
         [_] view  
     [_] tests/
         [_] service/{{PascalCase}}ServiceTest  
         [_] functional/{{PascalCase}}Cest  
         [_] unit/service/{{PascalCase}}ServiceTest  

Packagist