Yii2 快速生成代码工具 Gii 的使用方法

Gii a magical tool that can write code for you

本文更新于 2015-03-29 ,基于yii-basic-app-2.0.3模板创建的应用。

Yii2 框架 之所以称之为高效快速开发的一款框架,是因为有一个神奇的工具Gii

用过Yii1框架的都知道,Gii可以为你快速生成代码,也就是说搭建一个可以增删改查的WebApp可能一行代码都不用写。

当然作为Coder,不写代码怎么能实现我们想要的功能呢。

上次介绍了如何安装Yii框架,本次介绍一下如何使用gii工具快速实现CRUD功能。<br></br>

本次以yii2-basic-app-2.0.3版框架来介绍Gii的使用方法

安装完成后可以通过如下链接访问Gii工具

http://localhost/yii2test/web/index.php?r=gii

Yii2的Gii工具使用了Bootstrap,对比Yii1看起来漂亮了许多。

yii2框架提供的生成工具有6个:Model,CRUD,Controller,Form,Module,Extension

模块生成器(Module Generator)

如果你想实现应用模块化, 那么Module Generator能帮助到你。点击Module Generator生成模块

生成一个名为user的模块

2059-2

点击Preview会看到Gii会帮助我们生成三个文件,可以点击链接预览代码。点击Generate生成代码。

2059-3

会发现Yii2提示你:

The module has been generated successfully.(模块成功生成)To access the module, you need to add this to your application configuration. (如果想访问模块,你需要添加配置到你的应用里。)配置文件路径`@app/config/web.php`,把模块添加到应用里。
[ 'user' => [ 'class' => 'app\modules\user\Module', ], ], ......

浏览器输入如下地址:http://localhost/yii2test/web/index.php?r=user

访问的是user模块

2059-4

模型生成器(Model Generator)

模型的生成首先得配置数据库配置文件,路径:@app/config/db.php。

'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbname=yii2test', 'username' => 'root', 'password' => '', 'charset' => 'utf8', ]; 配置好数据库,我们使用Model Generator来生成对应的模型。 [![2059-5](http://xlbd.net/wp-content/uploads/2014/06/2059-5-e1427615626667.png)](http://xlbd.net/wp-content/uploads/2014/06/2059-5-e1427615626667.png) yii2会读取数据库中的表,如果数据库中没有user这个表。是无法读取数据库字段自动生成代码的。 这里注意填写`namespace`两种情况: - 生成应用下的models,这时默认填写`app\models` - 生成模块下的models,这时填写指定到模块user下的models:`app\modules\user\models` 建议勾选 Enable I18N,可以国际化WebApp。点击Generate生成代码。 ## CRUD方法生成器 下面来使用CRUD Generator来生成CRUD方法 [![2059-6](http://xlbd.net/wp-content/uploads/2014/06/2059-6-e1427616853185.png)](http://xlbd.net/wp-content/uploads/2014/06/2059-6-e1427616853185.png)   本次演示的是生成模块下的CRUD方法。 那么需要注意的是Model Class、Search Model Class、Controller Class、View Path都需要配置路径指定到相应模块; - Models Class:app\modules\user\models\User - Search Models Class:app\modules\user\models\UserSearch - Controller Class:app\modules\user\controllers\UserController - View Path:@app/modules/user/views/user 点击Generator会生成8个可选的文件。主要是生成UserControler和View文件。 经过上面三步。我们不经意间就完成了MVC。那么我们看看自动生成的代码为我们展现出来的有什么信息。 浏览器输入地址:http://localhost/yii2test/web/index.php?r=user/user [![2059-7](http://xlbd.net/wp-content/uploads/2014/06/2059-7-e1427616589857.jpg)](http://xlbd.net/wp-content/uploads/2014/06/2059-7-e1427616589857.jpg) 此页面访问的是模块user下的user数据表模型CRUD方法。代码生成时候默认显示了表中的5个字段,使用的是yii2的GridView视图。 - - - - - - 至此我们只是简单的配置了下config文件,没有编写一行代码。就实现了WebApp对数据表的操作功能。 Yii框架是不是很强大,很好用呢。至于我们对表怎么操作,完全可以自定义。后续就可以投入代码编写中了。 Yii框架帮助我们缩减了很多代码开发的工作量。可以称之为高效的PHP开发框架。
comments powered by Disqus