magein/think-command

thinkphp6开发创建常用的文件命令,安装请携带 --dev 参数

v2.0.0 2024-03-04 02:54 UTC

This package is auto-updated.

Last update: 2024-05-12 13:11:56 UTC


README

简介

thinkphp6~ 开发中使用的命令行用于快速创建文件

gitee

composer

lastest version v2.0.0

安装

因为是快速创建文件,所以仅仅是开发使用,切勿在生产环境使用

composer require --dev magein/think-command

配置文件

console.php中可以添加以下配置


'config' => [

    // 创建model模型使用的配置
    'model' => [
        // 保存路径 默认是 app/model
        'path' => 'app/model',
        // 继承的基类
        'extends' => \magein\think\utils\SoftModel::class,
        // 是否自动分组,是文件夹分组,建议开启,以便于管理
        'group' => true,
    ],

    // 数据仓库文件地址
    'repos' => [
        // 保存路径 默认是 app/api/validate
        'path' => 'app/api/repository',
        // 获取用户的id
        'user' => \app\api\service\UserCenterService::class,
    ],

    // 验证类文件地址
    'validate' => [
        // 保存路径 默认是 app/validate
        'path' => 'app/api/validate',
    ],

    'comment' => [
        // 保存路径 默认是comments
        'path' => 'comments',
    ]
    
    // 生成测试数据的配置
    'faker' => [
        //  识别成图片字段 默认['avatar', 'head', 'icon', 'pic', 'pics', 'img', 'image', 'images', 'picture', 'photo']
        'img_field' => ['img','icon'],
        //  图片地址可选值
        'img_src' => [
            '/static/img/user.png',
            '/static/img/default.png',
        ],
        // 识别成http远程地址 默认['url', 'urls', 'redirect', 'http', 'https', 'remote', 'remote_url', 'domain', 'host']
        'http_field' => [],
        // 远程地址可选值
        'http_url' => [
            env('app_url', 'http://localhost'),
            'https://xxxx.com',
        ],
     ],
]

使用

快速创建模型

需要指定数据中的表名称

# 创建model类且继承MainModel,同时执行model:attr
php think model:new  users
# 创建model属性
php think model:attr user

可以使用--help查看帮助说明

php think model:new --help
php think model:attr --help

创建模型的属性

需要指定已经创建的模型名称

创建属性是为了更好的贴切对面对象的编程模式,且ide中获取提示

$user=User::find();
echo $user->name;
php think model:attr user

user 查找 app/model/User.php

php think model:attr user/user_address

user/user_address 查找 就是在app/model/user/UserAddress.php

创建验证类

跟thinkphp官方的命令不一样的地方是会根据模型对应的表字段进行创建

需要指定已经创建的模型名称

php think model:vi user

创建测试数据

使用模型创建测试数据

php think model:faker user -l 5

创建字段说明文件

仅仅针对于apipost这个工具生成的描述字段

使用模型创建测试数据

php think model:comment user
php think model:comment user -l
php think model:comment user -p

生成api仓库

使用命令需要安装magein/think-utils

composer magein/think-utils
php think model:repose user

更新日志

v2.0.0

  1. 修改命名空间以及目录规范
  2. 支持composer extra扩展,安装即用,不需要在console.php中添加命令

v1.0.3

2024-01-25

  1. 重构了代码,支持new MakeXXX()的方式调用,以便于快速获取生成的模版文件
  2. 优化 MakeValidate 中varchar长度取值的问题,由固定1~100修改成从varchar(xx)中获取设置的长度
  3. 优化 MakeValidate 中tinyint生成in的取值范围,从comment中提取所有的整数型作为可选值
  4. 优化 Faker 中对于生成图片跟url地址的支持,需要在配置文件config/console.php增加配置,参考上述配置文件中的config['faker'] 配置项
  5. 修复 MakeComment 中生成分页和列表参数无效的问题

v1.0.2

  1. 1.0.1中的MakeModel.php 取消了status字段的对 trait 的依赖,在v1.0.2中恢复,会出现ModelStatusField找不到的问题

这文件在magein/think-utils中,之所以在另外一个包中,还是要使用trait的特性

v1.0.1

  1. 优化MakeModel.php 取消了status字段的对trait的依赖,将status字段的set、get、translate直接生成在模型中
  2. 修复MakeFaker.php中调用Str::random()引起的错误
  3. 修复MakeFaker.php中created_at默认值引起的错误
  4. 修改MakeComment.php中保存的默认路径