我想做的事:
使用其中的forms文件夹创建许多模块.
我做了什么:
在模块内部创建一个引导程序,并添加一个_initAutoload函数,并将特定的模块名称作为名称空间.
例如,具有以下引导程序的管理模块:
class Admin_Bootstrap extends Zend_Application_Module_Bootstrap { protected function _initAutoload() { $autoloader = new Zend_Application_Module_Autoloader(array( 'namespace' => 'Admin_', 'basePath' => dirname(__FILE__), )); return $autoloader; } }
我的问题是:
这是做我想要的正确方法吗? - 我在没有管理引导程序的情况下尝试了它,但它找不到我的表单,直到我添加了引导程序.
干杯
克里斯
自动装载器会自动设置为每个模块引导程序.您无需手动配置它.
class Admin_Bootstrap extends Zend_Application_Module_Bootstrap {}
是你所需要的全部.
然后把你的表格放进去/application/modules/admin/forms/
.
Admin_Form_Myform extends Zend_Form {...}
对于自定义资源,请自定义resourceAutoloader:
class Admin_Bootstrap extends Zend_Application_Module_Bootstrap { public function _initAuloload() { $resourceLoader = $this->_resourceAuloloader; // var_dump($resourceLoader); } }
记得在你的apllication.ini中添加
resources.frontController.moduleDirectory = APPLICATION_PATH"/ modules"
resources.modules =""