2

我正在尝试使用 Zend Framework 中的模块使我的应用程序模块化。

这是我的新项目结构:

   configs/ 
        application.ini
    layouts/
        filters/
        helpers/
        scripts/
    modules/
        default/
               forms/
               controllers/
               models/
               views/
        admin/
               forms/
               controllers/
               models/
               views/
    Bootstrap.php

我在我的应用程序 .ini 中添加了这些行:

resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.frontController.params.prefixDefaultModule = false
resources.modules[] =

我现在可以访问默认目录中的控制器和视图,而无需更改我之前的配置中的任何内容(我只是将我的控制器/模型/视图移动到模块/目录中)。

但是,我无法访问位于默认模块中的模型。

这是我尝试从控制器访问此模型时显示的错误:

致命错误:在第 138 行的 /var/www/.../application/modules/default/controllers/AccountController.php 中找不到类“Model_Account_Edit”

任何的想法?

4

1 回答 1

3

这可能是因为您缺少特定于模块的引导程序。向每个模块添加一个引导文件,它应该可以工作。该类应如下所示:

class Default_Bootstrap extends Zend_Application_Module_Bootstrap{}

将其添加到项目中

modules/
    default/
           forms/
           controllers/
           models/
           views/
           Bootstrap.php

你应该准备好了。

于 2012-01-19T08:20:45.180 回答