Zend Framework: отключить автозагрузку таблиц базовой модели - PullRequest
0 голосов
/ 24 марта 2010

Я использую Module Autoloader для автозагрузки ресурсов (форм, моделей Doctrine и т. Д.). Я вообще не использую Zend_Db_Table.

Когда я загружаю любую модель Доктрины, например MyModule_Model_Test, он также пытается загрузить MyModule_Model_TestTable, поэтому я получаю сообщения об ошибках, которые MyModule_Model_TestTable.php отсутствуют.

Чтобы это исправить, я могу создать пустой класс MyModule_Model_TestTable и класс все работает как положено.
Но мне этот файл не нужен.

Странно, что когда я перемещаю MyModule_Model_TestTable в /anyDirDeeper/MyModule_Model_TestTable без изменения его имени или содержимого, класс также корректно загружается ...

Как настроить автозагрузчик модуля так, чтобы он не требовал … Таблица классов?

У меня в application.ini:

resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.modules[] = 

и модуль начальной загрузки:

class MyModule_Bootstrap extends Zend_Application_Module_Bootstrap {}

Структура моего приложения похожа на эту:

/application/
    /modules/
        /mymodule/
            /models/
                /Db/
                   *Mymodule_Model_Db_Test*
            *Mymodule_Model_Test*

1 Ответ

0 голосов
/ 24 марта 2010

Я думаю, что эта проблема возникла из-за того, что я использовал одно и то же имя модуля и имя типа ресурса (зарегистрирован по умолчанию).

Названы модели: Acl_Model_Modelname и Acl_ пространство имен зарегистрировано в автозагрузчике. Изменено пространство имен модели на что-то другое, и это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...