# 命令

Laravel 版本的 Command 指令全部以 catch 开头,这样利于开发者使用,不易混乱。

# 查看 Catch 的 Console

php artisan | grep catch

# 创建模块

php artisan catch:make:module {moduleName}

创建模块之后会自动创建以下文件夹和文件,格式如下,这也是约定的格式。

  • Http
    • Controllers
    • Requests
  • Models
  • module.json
  • ServiceProvider.php
  • route.php

几乎和 thinkphp 的模块一致,当然其功能和作用也是一致的。

# 模块控制

其实就是模块禁用/启用的功能

php artisan catch:control:module

# 查看模块

php artisan catch:modules

# 创建控制器

  • moduleName 模块名称
  • controllerName 控制器名称
  • modelName 模型名称
php artisan catch:make:module {moduleName} {controllerName} {modelName}

WARNING

catch 的控制器生成是和模型强绑定的,如果控制器不需要模型的话,那么可以使用 Laravel 自带的 make:controller 创建之后,移植到对应模块下,或者你可以自己手动创建

# 创建模型

  • module 模块名称
  • model 模型名称,驼峰法命名
  • --d 可选项 支持软删除
  • --t 表名称 如果不设置,将会将模型的名称转换成snake命名方式作为表名
php artisan catch:make:model {module} {model} {--d} {--t=}

# 创建 migrations

  • module 模块名称
  • name migration 的名称
php artisan catch:make:migration {module} {name}

# 刷新 migrations

  • module 模块名称
  • --force 强制
php artisan catch:migrate:fresh {module} {--force}

# 执行 migrations

  • module 模块名称
  • --force 强制
php artisan catch:migrate {module} {--force}

# 回滚 migrations

  • module 模块名称
  • --force 强制
php artisan catch:migrate:rollback {module} {--force}

# 创建 seeder

  • module 模块名称
  • name seeder 的名称
php artisan catch:make:migration {module} {name}

# 执行 seeder

  • module 模块名称
  • --class 可选,执行指定的 seeder class
php artisan catch:db:seed {module} {--class=}

# 初始化管理员

其实就是在不进入后台的情况,重置管理员信息

  • --table 可以指定 table
php artisan catch:init:admin {--table=admin_users}

# 地区获取

  • --rollback可以删除 region 数据
catch:region {--rollback} 

# 发布 views 文件

如果需要此命令正常工作,首先要做两件事情。

  • 设置 config/catch.php 下的配置项 front_views_path 的前端项目地址,必须指定到 views 目录
  • 模块下必须要有 views 目录
php artisan catch:publish:views