PHP Yii开源框架入门学习(三)Yii的相关配置总结
时间:2014-4-30 作者:smarteng 分类: Yii-sae开发
以下是Yii相关配置的总结:
1,/protected/config/main.php中的配置:
1) 修改默认Controller,下载下来的源代码默认Controler为siteController:
在protected/config/main.php中,修改键defaultController的值为指定的controller,在该controller中须指定默认action。当request中未明确目的时,采用defaultController/defaultAction来响应。
'defaultController'=>'main',
设置后访问网站根路径即可跳到对应的Controller: MainController.php
下载下来的源代码默认为site,是在yiilite.php文件中指定,所以示例中跳转到SiteController.php
2) 修改默认登录action:
当未知名登录页面时,当未登录而访问需要登录的页面时,Yii会跳转到默认登录Action,默认Action为site/login,这也可以在main.php或模块配置文件中自定义
'components'=>array(
'user'=>array(
'allowAutoLogin'=>true,
'loginUrl'=>array('main/login.html'),
),
…
3) 数据库连接的定义:
'db'=>array(
'connectionString'=> 'mysql:host=localhost;dbname=db_schema',
'emulatePrepare' => true,
'username' => 'root',
'password' => '123',
'charset' => 'utf8',
'tablePrefix'=>'zz_',
),
4) 默认错误Action的定义,发生错误时将调用该Action:
'errorHandler'=>array(
'errorAction'=>'main/error',
),
5) 添加模块:
'modules'=>array(
…, // 其它模块
'admin',
),
添加之后方可通过路径访问:
或者:
http://127.0.0.1:8080/zuizen/admin/ 若按上一节修改了访问路径为path方式
6) 配置和修改Yii代码生成工具Gii:
'modules'=>array(
'gii'=>array(
'class'=>'system.gii.GiiModule',
'password'=>'123',
'ipFilters'=>array('127.0.0.1','::1'),
),
2,在Controller中的定义:
Controller的父类为CController,其中定义了Controller的一些变量。
1) 定义Layout:
public $layout='/layouts/admin';
//表示绝对路径,/表示相对路径
2) 定义默认Action:
public $defaultAction='index';
3,在模块Modules中的定义,如AdminModule:
1) 模块类的父类CWebModule中定义了部分变量:
public$defaultController='default';
public $layout;
public$controllerNamespace;
Yii::app()->errorHandler->errorAction= 'admin/default/error';
3) AdminModule init函数中定义模块内默认Controller:
Yii::app()->defaultController= 'admin/default';
4) AdminModule init函数中定义模块内默认登录Action:
Yii::app()->user->loginUrl= 'admin/default/login';