Yii2生成代码Gii

访问 gii 

首先保证初始化的时候选择的是开发模式,第二如果你是在服务器上,还要去设置一下ip权限

修改 /frontend/config/main-local.php 找到如下部分加上那句 allowIps 的配置。

if (!YII_ENV_TEST) {
// configuration adjustments for 'dev' environment
$config['bootstrap'][] = 'debug';
$config['modules']['debug'] = [
'class' => 'yii\debug\Module',
];

$config['bootstrap'][] = 'gii';
$config['modules']['gii'] = [
'class' => 'yii\gii\Module',
'allowedIPs' => ['127.0.0.1', '::1', '*'],
];

默认只能本机(ip)开发下才能访问,这里我们放开Ip限制

这样我们就能同通过网址xxxx/index.php?r=gii 来进行访问

这里解释一下:这个根据路由这一章但是我们找不到gii的controller,它是由Yii组件里面的模块(modules),设置在配置文件里面的,modules相当于子项目里面可以有子的mvc,路径访问起来就是 r=moduleId/ControllerId/ActionId

我们常用的是 Model Generator(对照数据库表来生成) 和 Curd Generator(根据生成的数据模型来生成CRUD操作)


先看模型生成,首先在配置好的数据库里建一张表 然后点击 Model Generator

这时候去看,生成的这个模型文件,其实和我们上章讲的模型差不多,但是有多了表明绑定,还有继承是ActiveRecord,封装了很多数据库操作有很多不需要用sql就可以操作数据库很方便,如果数据库表名用 * 表示,会生成配置的该库的所有表格的模型文件。

CRUD Generator

CRUD 指的是 Create, Read, Update, Delete 操作

这一步生成后,就会把控制器和 视图文件都生成,然后按照路由规则就可以访问,刚才生成的一个模型(数据库表)的 列表 ,详情,新增,编辑,删除。

如果大家要搜索呢,也可以填一个搜索模型名称,放在模型同目录下。

其他生成器,初学者很少用,就不讲了。

总结:

Gii 并不是一个非用不可的工具,但是绝对是一个能帮你规范代码,提高生产效率的工具。Gii 并不提供合并修改的功能,所以当你后期修改表结构的时候,方法一是你自己手动去修改对应的 Model 文件的几处代码。随之而来你的是你需要对Yii2自带的那些组件要熟悉起来,譬如ActiveForm(生成表单,表单校验),Girdview(几行代码就把列表,操作,分页都搞定了),以及Yii的数据库操作 ActiveRecord, 封装的请求Request,已经视图里面的资源配置 Assset....

评论区
登陆 后评论!