Yii命令行模式

(具体参数描述请使用命令看描述,不过全是英文)

 

 

 

1、Yii提供命令行指令不多,常用的有webapp 和 shell。

Java代码  
  1. 1.  message 搜索指定文件信息 yicc message webroot/xxx.php  
  2. 2.  shell   进入命令行模式   
  3. 3.  webapp  创建项目  
  4. 4.  migrate 数据迁移计划  

2、进入命令行模式,
   1、创建项目

Java代码  
  1. 1.  %YiiRoot/framework/yiic webapp  webroot/index.php     

%YiiRoot/framework/yiic  一般是框架根目录,需要用的文件为yiic.php:: yiic.bat,一般创建的新项目protecte目录下都有这两个文件。
webroot/index.php 一般是项目根目录根据你的需求来。

Java代码  
  1. 2. %YiiRoot/framework/yiic shell  webroot/index.php      

进入后help 可以看到许多命令
            命令

Java代码  
  1. 1.  controller 创建控制器   
  2. 2.  crud        根据模型创建对应的控制器  
  3. 3.  form        根据模型创建表单视图   
  4. 4.  help        帮助命令  
  5. 5.  model     根据表名创建模型  
  6. 6.  moduel   创建组件  

2、创建命令
总结: 流程先建立数据库,根据表结构创建对应的model(model命令),再根据model创建对应的控制器和视图(crud命令)。
(1)、controller 控制器

Java代码  
  1. controller message helloworld goodbye    

message 类前缀,文件前缀,后面可以加无数方法
但是如果以后增加或者修改方法用命令比较麻烦,建议以后手动加。



(2)、crud根据模型创建对应的控制器,必须先建立数据表,才能根本表和模型创建对应的控制器。

Java代码  
  1. Crud  crud modelClassName controllerName   

modelClassName 模型类前缀,文件前缀
controllerName 控制器类前缀,文件前缀
用http模式输入r=gii 如果有没模型文件无法创建,但命令行模式不受影响

(3)、form根据模型创建对应的控制器,必须先建立数据表,才能根本表和模型创建对应的控制器。

Java代码  
  1. Form  modelClassName ViewName  ViewPath    

modelClassName 模型类前缀,文件前缀
ViewName 视图文件
ViewPath  视图路径 application.views或者自己组件的地址

(4)、model根据模型创建对应的控制器,必须先建立数据表,才能根本表和模型创建对应的控制器。

Java代码  
  1. model  modelClassName tableName   

modelClassName 要创建的模式,模型类前缀,文件前缀
tableName 表名

  (5)、module  创建模块

Java代码  
  1. module   moduleId  

moduleId  模块ID


3、数据迁移
所有的迁移命令后面可以加上一些参数

Java代码  
  1. --interactive=<true|false> 是否使用交互模式  
  2. --migrationPath=app.migrations设置迁移类所在的文件夹  
  3. --migrationTable=tbl_migration 设置迁移状态记录表  
  4. --connectionID=db设置要将迁移应用到哪个数据库  
  5. --templateFile=application.migrations.template设置生成迁移类的模板文件  

1)、创建迁移目录:

Java代码  
  1. cd   protected  
  2. mkdir migrations  

migrations 是数据库临时目录,这个必须先手动创建

2)、创建新的迁移:

Java代码  
  1. Yiic migrate create <name>   

创建一个新的迁移计划,产生一个类在protected/migrations下,你需要实现up和down两个函数

Java代码
  1. Up    $this->createTable(‘表名’, array(结构));   
  2. Down  $this->dropTable(‘表名’);删除该表  

3)、应用所有迁移:

Java代码  
  1. Yiic migrate   

如果没有给出“行动”参数,则默认为“向上”。

4)、向上迁移:

Java代码  
  1. Yiic migrate up 3  

应用三步迁移,若没有数字默认是1

5)、还原迁移:

Java代码  
  1. Yiic migrate down 3  

还原最后3步应用迁移,若没有数字默认是1

6)、指定版本迁移:

Java代码  
  1. Yiic migrate to 110809_085201  

将迁移应用至2011-08-09  08:52:01创建的那个迁移计划

7)、标记指定迁移版本:

Java代码  
  1. Yiic migrate mark 110809_085201  

让系统认为现在的迁移是2011-08-09  08:52:01的那个,但是不实际执行迁移计划。
这点与to命令不同,to会执行迁移计划应用,然后将状态标记,这个只标记。

8)、查看已应用迁移:

Java代码  
  1. Yiic migrate history [limit]  

查看已应用的limit步迁移,若没有limit则显示所有

9) 查看可应用迁移:

Java代码  
  1. Yiic migrate new [limit]  

查看可以应用的limit步迁移,若没有limit则显示所有   

转载于:https://www.cnblogs.com/xieqian111/p/5243066.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值