【发布时间】:2011-10-26 15:19:15
【问题描述】:
我的网站结构目前是这样的:
/cms/
/data/ - caches etc
/modules/
/public/ - aliases from site public folders
/website1
/images
/layouts, views, scripts, css etc
(no index.php because of the alias)
这很好用,我的系统会查看别名文件夹来运行应用程序。但是,我现在已经到了想要扩展其中一个模块控制器的地步。
理想情况下,我的结构是:
/cms/
.. as above
/CLIENT_ID/
/modules
..extending/overriding scripts
但是,问题来了:要调用的控制器必须按照 Zend 的文件名结构(Module_IndexController 等)调用,所以扩展基类是:
Module_IndexController extends Module_IndexController
这显然不能很好地工作。我的想法是应该是:
CLIENTID_Module_IndexController extends Module_IndexController
但我对如何实施这个想法感到困惑?我可以使用以下方法添加控制器目录:前端控制器上的 addControllerDirectory 但我猜我需要在某处更改被调用的类名?
然后我可以检查该文件夹是否为目录并运行覆盖类而不是基类。
有什么想法吗?我愿意重组文件夹,但显然需要将媒体文件保留在公用文件夹中。
【问题讨论】:
标签: php zend-framework