我很難弄清楚我們如何擁有一個模塊化目錄結構,並能夠加載要在模塊間共享的資源。即,具有公共資源的Zend Framework模塊
application
--- /forms
--- /models
--- /modules
------/module1/
---------/models
------/module2/
---------/models
現在,我想要做的是從模塊中/應用/表格負荷形式。我試過的所有東西都會導致這些類沒有被加載。
我試過了: 1)讓Zend試着自動判斷出來。 2)指定應用程序路徑的主引導程序中的所有路徑以及模塊。即,
protected function _initAutoload()
{
$front = $this->bootstrap("frontController")->frontController;
$modules = $front->getControllerDirectory();
$default = $front->getDefaultModule();
$moduleloader = new Zend_Application_Module_Autoloader(array(
'namespace' => 'Application',
'basePath' => APPLICATION_PATH
));
foreach (array_keys($modules) as $module) {
$moduleloader = new Zend_Application_Module_Autoloader(array(
'namespace' => ucfirst(strtolower($module)),
'basePath' => $front->getModuleDirectory($module))
);
}
}
3)在我的桌子上多次砸我的頭。
..是的,我意識到我不需要模塊的循環,因爲我在每個模塊目錄中都有空白的引導程序。
歡迎任何建議。謝謝!
抱歉,我的描述錯誤。我不包括形式,但形式元素。這個實現給了我一個想法,檢查Form_Element實際上是在Zend_Application_Module_Autoloader中映射的,事實證明它並不是。通過將這添加到資源類型,一切都開始工作。 – 2011-03-31 20:10:32