1

我在http://www.yiiframework.com/wiki/33/之后创建了前端-后端 结构,所以我的结构是

wwwroot/
    index.php
    backend.php
    assets/
    images/
    js/
    protected/
        config/
            main.php
        components/
        controllers/
        models/
        modules/
        views/
        runtime/
        backend/
            config/
                main.php
            components/
            controllers/
            models/
            modules/
            views/
            runtime/

我的后端配置是

$backend = dirname(dirname(__FILE__));
$frontend = dirname($backend);
yii::setPathOfAlias('backend',$backend);
return array(
    'basePath' => $frontend,
    'controllerPath' => $backend.'/controllers',
    'viewPath' => $backend.'/views',
...
    'import'=>array(
    'backend.modules.rights.*',
    'backend.modules.rights.components.*',
    'backend.models.*',
    'backend.components.*',
    'application.modules.user.models.*',
    'application.modules.user.components.*',
),...

现在我需要从backend.php/discussion 等前端访问后端的控制器、模型和视图,讨论在 protected/controllers/DiscussionController 中,现在只能从index.php/discussion访问

一种解决方案是设置'controllerPath'=>$frontend.'/controllers' 但现在我松开了后端控制器。那么,当我调用控制器时,有没有办法首先在后端控制器中查找,然后在前端控制器中查找(以防在后端控制器中找不到)?

4

1 回答 1

1

就个人而言,我喜欢将后端(使用安全登录)与前端完全分开,即:完全不同的项目。通过这种方式,可以使用隐藏的子域访问您的后端,例如 hidden-admin.my-domain.com

如果您想共享代码,那么如上所述,请使用组件或小部件。

于 2012-11-07T15:01:38.087 回答