YII默认使用的是sqlite,但是他已经在配置文件中注释了mysql的连接语句。
在网站目录protected/config/
下面找到主配置文件,main.php
。
打开main.php找到
1 2 3 | |
这是默认连接的sqllite,将这段代码注释,然后在这行代码下面找到
1 2 3 4 5 6 7 8 9 10 | |
将这行代码的注释去掉,并创建数据库(这个不用教了吧)
使用GII配置CRUD
注意:YII使用的php的PDO来访问数据库的,所以在使用数据库时,需要配置好PDO。
YII的CRUD可以自动生成,使用GII这个工具。
要使用GII,在主配置文件中,打开GII即可,并设置密码。
找到modules
1 2 3 4 5 6 7 8 9 10 11 | |
将里面gii的注释去掉,并修改密码。
gii是有IP限制的,因为我YII是安装在Linux虚拟机里的,所以我访问时会返回403错误,提示没有权限
Error 403
遇到这种情况,我们就需要配置gii的ipFilters
1 | |
将我的IP添加进去,成功的话会提示输入密码
为了演示,我们先创建数据表
1 2 3 4 5 6 7 8 9 | |
以上sql代码创建了一个user表
我们要根据表结构生成表的模型类
点击左边Model Generator (图片网上找的,对付用吧)。注意,这里的表名是要加前缀的,model类名是自动生成的,点击”preview”预览,可以看到生成的代码,然后点击生成”Generate”,模型类User.php
就生成了,它位于protected/modules/
下。
出现The code has been generated successfully.
代表文件生成成功。
之后我们还要使用GII生成对tbl_user的CRUD操作类
在Model Class
里填入我们刚生成的Model类的名字,Controller ID
是自动生成的,我们看到有一个Code Template
,代码模板的路径,这是不是意味着默认生成的代码可以修改呢??嘿嘿,既然我们刚开始学,就先不考虑这个,回到正题->预览->生成,ok,成功。这里,GII帮我们生成了一个UserController.php
控制器文件和user的多个视图文件。UserController.php
位于protected/controllers/
下,多个视图文件位于views/user
下。
通过URL访问user控制器:index.php?r=user
如果要操作,需要用管理员admin/admin
登录。
查看(Read)/添加(Create)/删除(Delete)/更新(Update)。
至此,网站的模型(models)、控制器(controller)、视图(view)就都创建好了,剩下的就是自己写代码了。