Yii命令行模式
2016-03-04 18:41
766 查看
(具体参数描述请使用命令看描述,不过全是英文)
1、Yii提供命令行指令不多,常用的有webapp 和 shell。
Java代码
1. message 搜索指定文件信息 yicc message webroot/xxx.php
2. shell 进入命令行模式
3. webapp 创建项目
4. migrate 数据迁移计划
2、进入命令行模式,
1、创建项目
Java代码
1. %YiiRoot/framework/yiic webapp webroot/index.php
%YiiRoot/framework/yiic 一般是框架根目录,需要用的文件为yiic.php:: yiic.bat,一般创建的新项目protecte目录下都有这两个文件。
webroot/index.php 一般是项目根目录根据你的需求来。
Java代码
2. %YiiRoot/framework/yiic shell webroot/index.php
进入后help 可以看到许多命令
命令
Java代码
1. controller 创建控制器
2. crud 根据模型创建对应的控制器
3. form 根据模型创建表单视图
4. help 帮助命令
5. model 根据表名创建模型
6. moduel 创建组件
2、创建命令
总结: 流程先建立数据库,根据表结构创建对应的model(model命令),再根据model创建对应的控制器和视图(crud命令)。
(1)、controller 控制器
Java代码
controller message helloworld goodbye
message 类前缀,文件前缀,后面可以加无数方法
但是如果以后增加或者修改方法用命令比较麻烦,建议以后手动加。
(2)、crud根据模型创建对应的控制器,必须先建立数据表,才能根本表和模型创建对应的控制器。
Java代码
Crud crud modelClassName controllerName
modelClassName 模型类前缀,文件前缀
controllerName 控制器类前缀,文件前缀
用http模式输入r=gii 如果有没模型文件无法创建,但命令行模式不受影响
(3)、form根据模型创建对应的控制器,必须先建立数据表,才能根本表和模型创建对应的控制器。
Java代码
Form modelClassName ViewName ViewPath
modelClassName 模型类前缀,文件前缀
ViewName 视图文件
ViewPath 视图路径 application.views或者自己组件的地址
(4)、model根据模型创建对应的控制器,必须先建立数据表,才能根本表和模型创建对应的控制器。
Java代码
model modelClassName tableName
modelClassName 要创建的模式,模型类前缀,文件前缀
tableName 表名
(5)、module 创建模块
Java代码
module moduleId
moduleId 模块ID
3、数据迁移
所有的迁移命令后面可以加上一些参数
Java代码
--interactive=<true|false> 是否使用交互模式
--migrationPath=app.migrations设置迁移类所在的文件夹
--migrationTable=tbl_migration 设置迁移状态记录表
--connectionID=db设置要将迁移应用到哪个数据库
--templateFile=application.migrations.template设置生成迁移类的模板文件
1)、创建迁移目录:
Java代码
cd protected
mkdir migrations
migrations 是数据库临时目录,这个必须先手动创建
,
2)、创建新的迁移:
Java代码
Yiic migrate create <name>
创建一个新的迁移计划,产生一个类在protected/migrations下,你需要实现up和down两个函数
Java代码
Up $this->createTable(‘表名’, array(结构));
Down $this->dropTable(‘表名’);删除该表
3)、应用所有迁移:
Java代码
Yiic migrate
如果没有给出“行动”参数,则默认为“向上”。
4)、向上迁移:
Java代码
Yiic migrate up 3
应用三步迁移,若没有数字默认是1
5)、还原迁移:
Java代码
Yiic migrate down 3
还原最后3步应用迁移,若没有数字默认是1
6)、指定版本迁移:
Java代码
Yiic migrate to 110809_085201
将迁移应用至2011-08-09 08:52:01创建的那个迁移计划
7)、标记指定迁移版本:
Java代码
Yiic migrate mark 110809_085201
让系统认为现在的迁移是2011-08-09 08:52:01的那个,但是不实际执行迁移计划。
这点与to命令不同,to会执行迁移计划应用,然后将状态标记,这个只标记。
8)、查看已应用迁移:
Java代码
Yiic migrate history [limit]
查看已应用的limit步迁移,若没有limit则显示所有
9) 查看可应用迁移:
Java代码
Yiic migrate new [limit]
查看可以应用的limit步迁移,若没有limit则显示所有
1、Yii提供命令行指令不多,常用的有webapp 和 shell。
Java代码
1. message 搜索指定文件信息 yicc message webroot/xxx.php
2. shell 进入命令行模式
3. webapp 创建项目
4. migrate 数据迁移计划
2、进入命令行模式,
1、创建项目
Java代码
1. %YiiRoot/framework/yiic webapp webroot/index.php
%YiiRoot/framework/yiic 一般是框架根目录,需要用的文件为yiic.php:: yiic.bat,一般创建的新项目protecte目录下都有这两个文件。
webroot/index.php 一般是项目根目录根据你的需求来。
Java代码
2. %YiiRoot/framework/yiic shell webroot/index.php
进入后help 可以看到许多命令
命令
Java代码
1. controller 创建控制器
2. crud 根据模型创建对应的控制器
3. form 根据模型创建表单视图
4. help 帮助命令
5. model 根据表名创建模型
6. moduel 创建组件
2、创建命令
总结: 流程先建立数据库,根据表结构创建对应的model(model命令),再根据model创建对应的控制器和视图(crud命令)。
(1)、controller 控制器
Java代码
controller message helloworld goodbye
message 类前缀,文件前缀,后面可以加无数方法
但是如果以后增加或者修改方法用命令比较麻烦,建议以后手动加。
(2)、crud根据模型创建对应的控制器,必须先建立数据表,才能根本表和模型创建对应的控制器。
Java代码
Crud crud modelClassName controllerName
modelClassName 模型类前缀,文件前缀
controllerName 控制器类前缀,文件前缀
用http模式输入r=gii 如果有没模型文件无法创建,但命令行模式不受影响
(3)、form根据模型创建对应的控制器,必须先建立数据表,才能根本表和模型创建对应的控制器。
Java代码
Form modelClassName ViewName ViewPath
modelClassName 模型类前缀,文件前缀
ViewName 视图文件
ViewPath 视图路径 application.views或者自己组件的地址
(4)、model根据模型创建对应的控制器,必须先建立数据表,才能根本表和模型创建对应的控制器。
Java代码
model modelClassName tableName
modelClassName 要创建的模式,模型类前缀,文件前缀
tableName 表名
(5)、module 创建模块
Java代码
module moduleId
moduleId 模块ID
3、数据迁移
所有的迁移命令后面可以加上一些参数
Java代码
--interactive=<true|false> 是否使用交互模式
--migrationPath=app.migrations设置迁移类所在的文件夹
--migrationTable=tbl_migration 设置迁移状态记录表
--connectionID=db设置要将迁移应用到哪个数据库
--templateFile=application.migrations.template设置生成迁移类的模板文件
1)、创建迁移目录:
Java代码
cd protected
mkdir migrations
migrations 是数据库临时目录,这个必须先手动创建
,
2)、创建新的迁移:
Java代码
Yiic migrate create <name>
创建一个新的迁移计划,产生一个类在protected/migrations下,你需要实现up和down两个函数
Java代码
Up $this->createTable(‘表名’, array(结构));
Down $this->dropTable(‘表名’);删除该表
3)、应用所有迁移:
Java代码
Yiic migrate
如果没有给出“行动”参数,则默认为“向上”。
4)、向上迁移:
Java代码
Yiic migrate up 3
应用三步迁移,若没有数字默认是1
5)、还原迁移:
Java代码
Yiic migrate down 3
还原最后3步应用迁移,若没有数字默认是1
6)、指定版本迁移:
Java代码
Yiic migrate to 110809_085201
将迁移应用至2011-08-09 08:52:01创建的那个迁移计划
7)、标记指定迁移版本:
Java代码
Yiic migrate mark 110809_085201
让系统认为现在的迁移是2011-08-09 08:52:01的那个,但是不实际执行迁移计划。
这点与to命令不同,to会执行迁移计划应用,然后将状态标记,这个只标记。
8)、查看已应用迁移:
Java代码
Yiic migrate history [limit]
查看已应用的limit步迁移,若没有limit则显示所有
9) 查看可应用迁移:
Java代码
Yiic migrate new [limit]
查看可以应用的limit步迁移,若没有limit则显示所有
相关文章推荐
- ubuntu下msmtp+mutt的安装和配置
- cgi   fast-cgi  php-cgi  php-fpm理解
- PHP log相关函数
- PHP字符串函数
- PHP empty、isset、isnull的区别
- php 36进制与10进制转换
- PHP 的垃圾收集机制
- php图片上传
- 开发中碰到的问题:Unparsed aapt error(s)! Check the console for output.
- PHP正则:正向/反向预搜索
- AJAX + PHP
- php-mysql数据库增删改查
- PHP的命名空间
- php中的extract函数
- PHP如何将表单提交给自己
- PHP提交表单到当前页动作检测
- PHP 时间函数介绍
- 在PHP5.3以上版本运行ecshop出现的问题及解决方案
- matplotlib.pyplot.imshow
- php.ini中date.timezone设置