主题
命令介绍
命令行请务必看一下,对于你开发会有很大的帮助,提升你的开发效率。CatchAdmin
提供了很多有用的命令,在你的开发使用熟练的话,将会大大增加你的开发效率。
安装框架
php think catch:install
参数列表
- 可选参数
-r
,重置数据库
WARNING
使用该选项参数, 通过 migration 的生成的表将会被回滚删除,然后重新添加初始化数据.
备份数据
php think backup:data
参数列表
- 必选参数
tables
, 多个表需要使用 , 分隔开 - 可选参数
-z
, 是否压缩成 zip 格式
事例
php think backup:data users,roles -z
创建模块
如果你想使用模块式开发,请使用下面命令生成模块
php think create:module moduleName
参数
- moduleName 模块名称
该命令会在 catch 目录下生成模块文件夹,默认有三个文件加上若干文件夹
- moduleService.php // 服务启动文件
- route.php // 路由文件
- module.json // 模块信息描述文件
这样基本的模块就创建完毕了。
创建表
在创建完migrations
,需要设计表结构。可以在官方文档上看到如何使用数据迁移,当你设计完结构之后,如果还有默认数据的话,需要使用 seeds 进行填充。在做完这些工作之后,使用以下命令
php think catch-migrate:run module
TIP
该命令可以生成对应的表结构
php think catch-seed:run module
TIP
该命令可以填充对应的表数据
创建 Migration
php think catch-migrate:create
参数
- 必选参数 module, 模块名称
- 必选参数 MigrationName,驼峰法命名
实例
php think catch-migrate:create permissions RoleHasPermissions
创建模型
当你创建表成功后,还需要生成对应的模型,如果你是自己创建模型的话,还要填充表字段将会很浪费时间,所以才会有该命令的产生。
php think create:model moduleName modelName
参数
- moduelName 模块名称
- modelName 模型名称
- 可选参数 --softDelete 值:SOFTDELETE 软删除参数之后,使用的模型会有区别,请注意
模型名称
和模块名
称都是必须的,模型名称还必须是驼峰规则,不然会找不到表,例如你的表名是user_role
,那么你的模型名称就应该是 UserRole
这样的驼峰命名,这是约定。
模块禁用
如果不想使用某个模块了,可以使用下面的命令。
php think disable:module moduleName
WARNING
该命令使用之后会将相关菜单全部删除。
模块启用
如果想继续使用某个模块了,可以使用下面的命令。
php think enable:module moduleName
TIP
该命令使用之后会将相关删除菜单全部恢复。
打包模块
TIP
这是预留命令,目前来看没有任何作用
php think package:zip module
该命令会将文件夹压缩成 ZIP 包。
模块服务发现
在 catchAdmin 中使用多模块的时候,必须使用服务发现,保证模块的可用
php think catch-service:discover
导出菜单
目前 CatchAdmin 由于模块独立,所以安装模块的时候对于权限菜单也是独立的,所以当你开发完独立的模块之后,应该是需要单独导出菜单的。所以提供了很简单的命令,支持树状导出。
sh
php think export permissions -p parent_id -m system
- permissions 就是权限表,根据实际填写
-p
树状的父级标识,CatchAdmin permissions 表使用parent
-m
导出的模块名称
执行 migrate
项目有时候需要更新,新增字段,借助 migration,可以很好的管理表字段的版本。
sh
php think catch-migrate:run moduleName
可以很好更新模块下的 migration
填充数据
如果模块有初始化数据需要填充,那么就需要下面的命令
sh
php think catch-seed:run moduleName
这个命令是更新模块下所有 seed,因为 seed 是没有版本控制的,所以你不能每次都去执行模块下所有的 seeder,你可以指定执行某个 seeder.
sh
php think catch-seed:run moduleName -s SeederClass
缓存敏感词
sh
php think cache:sensitiveWord