如何在application.ini中为AutoLoader配置默认名称空间和模型位置?

| 使用PHP 5.3和Zend Framework 1.11.7,我一直在尝试配置AutoLoader以自动加载驻留在默认目录application / models中的Model类(对于Zend_Db)。 我发现以下解决方案: 我可以在Bootstrap.php中添加以下功能:
protected function _initLoader() 
{
    $loader = new Zend_Loader_Autoloader_Resource (array (
    \'basePath\' => APPLICATION_PATH,
    \'namespace\' => \'Default\'));
    $loader -> addResourceType ( \'model\', \'models\', \'Model\'); 
}  
似乎应该在application.ini中轻松设置该选项。所以我的问题是,是否有任何我可以添加到application.ini的相关指令可以执行与函数执行的相同任务? 更新 设置appnamespace指令后,我仍然需要添加以下功能:
protected function _initLoader() 
{    
    $loader = new Zend_Loader_Autoloader_Resource (array (
    \'basePath\' => APPLICATION_PATH));
    $loader -> addResourceType ( \'model\', \'models\', \'Model\'); 
}
否则它将找不到我的模型类。 唯一的区别是我删除了属性“名称空间”。 我可以添加任何其他属性以完全删除此功能? 谢谢! :) 克菲尔     
已邀请:
        在application.ini中,您应该设置
appnamespace = \"Application\"
resources.frontController.controllerDirectory = APPLICATION_PATH \"/controllers\"
appnamespace是用于模型的前缀,因此,如果模型为\“ Default_Model_User \”,则appnamespace将为\'Default \';如果模型为\“ Application_Model_User \”,则appnamespace将为\“ application \” 这两个指令应理清默认应用程序的自动加载 您也可以在bootstrap中使用它来设置它,您需要使用Zend_Application_Module_AutoLoader:
protected function _initDefaultModuleAutoloader()
{
    $this->_resourceLoader = new Zend_Application_Module_Autoloader(array(
        \'namespace\' => \'Application\',
        \'basePath\'  => APPLICATION_PATH,
    ));
}
    
        将以下内容放入您的application.ini中
appnamespace = \"MyNamespace\"
然后,它将使用名为MyNamespace_Model_MyModel的类将文件加载到您的application / models目录中。     

要回复问题请先登录注册