日期:2014-05-20 浏览次数:21259 次
1.首先我把目录结构写下来:
??? wwwroot/
??????? index.php
??????? admin.php
??????? assets/
??????? images/
??????? protected/
??????????? config/
??????????????? main.php
??????????? components/
??????????? controllers/
??????????? models/
??????????? views/
??????????? runtime/
??????????? admin
/
??????????????? config/
??????????????????? main.php
??????????????? components/
??????????????? controllers/
??????????????? views/
??????????????? runtime/
?
2.前后台引导文件分别如下,复制index.php改名为admin.php并修改
Yii::app()->createWebApplication('protected/admin
/config/main.php')->run();
?
3.protected/admin/config/main.php的代码如下:
<?php
$backend = dirname(dirname(__FILE__));
$frontend = dirname($backend);
Yii::setPathOfAlias('backend',$backend);
$frontendArray = require_once($frontend.'/config/main.php');
$backendArray=array(
'name'=>'网站后台管理系统',
'basePath'=>$frontend,
'viewPath'=>$backend.'/views',
'controllerPath'=>$backend.'/controllers',
'runtimePath'=>$backend.'/runtime',
'import'=>array(
'application.models.*',
'application.components.*',
'backend.models.*',
'backend.components.*',
),
'params'=>CMap::mergeArray(require($frontend.'/config/params.php'),require($backend.'/config/params.php')),
);
return CMap::mergeArray($frontendArray,$backendArray);
这里我们的model是公用的 ,controller和view,runtime是分开的,我们还可以通过命令行对后台进行model和crud,方法如下:
>yiic shell path/to/site/admin.php >model Article >crud Article
这样后台对应的controller和view就生成了!
如果只对后台的变量进行配置的话,只需要修改protected/admin下的配置文件就可以了!
后台配置文件与前台配置文件进行数组合并,没有的项自动包含,相同项则将其覆盖,例如后台中可使用 'language'=>'zh_cn',且'name'=>'网站后台管理系统'仍为自己,是将前台覆盖的结果。
前后台分离:前台入口index.php,后台是admin.php。后台可以重用前台,module那个更像是子项目,这个前后台两个像并行的