您的位置:首页 > 编程语言 > PHP开发

让你的Yii程序连接mysql数据库

2014-01-24 10:48 399 查看
在完成了第一个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:



点击生成之后,生成代码:

The controller has been generated successfully. You may try it now.
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的工程配置就好了。好玩吧。

开始进入欢乐之旅了,恭喜!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: