让你的Yii程序连接mysql数据库
在完成了第一个yii的程序生成之后,还需要配置数据库。用yiic生成的yii项目,默认配置了sqlite的数据库。
1、配置项目的数据库连接
按照手册说的,修改项目下的\protected\config\console.php 配置文件,把数据库从sqlite改到mysql。连接都是写好的,注释了原来的sqlite,配置上密码就可以了
/*
‘db‘=>array(
‘connectionString‘
=> ‘sqlite:‘.dirname(__FILE__).‘/../data/testdrive.db‘,
),
*
*/
// uncomment the following
to use a MySQL database
‘db‘=>array(
‘connectionString‘
=> ‘mysql:host=localhost;dbname=testdrive‘,
‘emulatePrepare‘
=> true,
‘username‘
=> ‘root‘,
‘password‘
=> ‘此处输入你的数据库密码‘,
‘charset‘ => ‘utf8‘,
),
2、建立数据库
在你的mysql数据库中,新建数据库 testdrive, 字符集我是选择utf8-bin的。
然后再打开工程下的文件\protected\dataschema.mysql.sql ,拷贝语句到phpmyadmin(或者你自己的mysql客户端),创建表并插入用户数据。执行后验证数据库如下图:
3、执行CRUD(增删查改)
可以用yiic的shell来生成代码,也可以用gii来实现。为了简单直观,我选择了用gii来做。以下先介绍以下gii的配置。
打开工程的配置文件%WebRoot/testdrive/protected/config/main.php,确保以下选项为开启的:
‘import‘=>array(
‘application.models.*‘,
‘application.components.*‘,
),
‘modules‘=>array(
// uncomment the following to
enable the Gii tool
‘gii‘=>array(
‘class‘=>‘system.gii.GiiModule‘,
‘password‘=>‘此处输入你的gii密码,访问的时候使用‘,
// If removed, Gii defaults
to localhost only. Edit carefully to taste.
‘ipFilters‘=>array(‘127.0.0.1‘,‘::1‘),
),
访问URL:http://127.0.0.1/testdriver/index.php?r=gii 会弹出登陆框,输入预设的gii密码即可进入,如下图:
生成用户模型
点击上图中的 Model Gengerator,输入如下图的内容以后,点击preview,这个预览还有纠错的功能。如下图:
然后点击generate,就生成了tbl_user的这个表对应的模型User文件:
Generating code using template "W:\xampp\htdocs\framework\gii\generators\model\templates\default"... generated models\User.php done!
生成CRUD的代码
在gii的控制面板,点击Crud Generator,输入刚才生成的那个模型名称User:
点击生成之后,生成代码:
Generating code using template "W:\xampp\htdocs\framework\gii\generators\crud\templates\default"... generated controllers\UserController.php generated views\user\_form.php generated views\user\_search.php generated views\user\_view.php generated views\user\admin.php generated views\user\create.php generated views\user\index.php generated views\user\update.php generated views\user\view.php done!
点击上面的 try it now, 进入刚才生成的页面,可以看到tbl_user的内容都呈现在网页上了。如果要对该表进行管理操作,则点击右边的“manager user”, 此时需要用admin,admin登录。应该该项目还没有做权限管理,yiic默认的项目管理员admin。这个在之后的rbac做好以后就需要在用户角色的来进行操作了。
至此,你就可以对tbl_user这个表进行CRUD的操作了,目前为止自己还没有写过一行代码。只是进行yii的工程配置就好了。好玩吧。
开始进入欢乐之旅了,恭喜!
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。