2010-03-23 69 views
0

我使用Module Autoloader自動加載資源(表單,Doctrine模型等)。 我根本不使用Zend_Db_Table。Zend Framework:禁用基本模型表的自動加載

當我加載任何學說模型, 例如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* 
+0

我知道有沒有好的方式來加載模塊的學說模型,但 在閱讀了關於您嘗試加載學說模型之後,您激勵我將Doctrine Bootstrap代碼移動到模塊,老實說,我不知道如何回答你的問題:(我還沒有測試它,但它聽起來很有趣 – tawfekov 2010-03-24 10:34:33

+0

它工作時,我自動加載引導模型,但不在控制器操作... – takeshin 2010-03-24 12:13:04

回答

0

我認爲這個問題是因爲我使用了相同的模塊名稱和資源類型名稱(默認註冊)。

型號被命名爲:Acl_Model_ModelnameAcl_命名空間與自動加載機註冊。將模型命名空間更改爲其他內容,並且可以工作。