在Yii中组织具有前端和后端的应用程序的目录

时间:2014-06-01 23:34:12

标签: php yii yii-extensions yii-modules

我正在使用技术在yii中使用以下目录结构将后端与前端分开: wwwroot的/

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

参考:http://www.yiiframework.com/wiki/33/organize-directories-for-applications-with-front-end-and-back-end/

问题是,我不明白我们如何在前端网址的后端使用Yii :: app-> createUrl()或Yii :: app-> createAbsoluteUrl()。

例如Yii :: app-> createUrl('home / index')将在后端控制器/视图中回显“/ backend / home / index”但我希望它像这样的/ home / index回应前端控制器/视图。

请帮我解决任何问题。

1 个答案:

答案 0 :(得分:2)

我不同意该wiki文档中描述的技术,您应该为后端创建module,而不是尝试运行两个单独的应用程序。

这样您的后端可以共享您的模型和组件,但控制器,视图和任何独特的模型仍然是分开的。

然后你可以去:

$this->createUrl('backend/mycontroller',array('id'=>100));

当您需要从控制器创建URL时。