日期:2014-05-20 浏览次数:20937 次
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那个更像是子项目,这个前后台两个像并行的