如何在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\');
}
否则它将找不到我的模型类。
唯一的区别是我删除了属性“名称空间”。
我可以添加任何其他属性以完全删除此功能?
谢谢! :)
克菲尔
没有找到相关结果
已邀请:
2 个回复
杰黔轿缺
appnamespace是用于模型的前缀,因此,如果模型为\“ Default_Model_User \”,则appnamespace将为\'Default \';如果模型为\“ Application_Model_User \”,则appnamespace将为\“ application \” 这两个指令应理清默认应用程序的自动加载 您也可以在bootstrap中使用它来设置它,您需要使用Zend_Application_Module_AutoLoader:
河饶办斜施
然后,它将使用名为MyNamespace_Model_MyModel的类将文件加载到您的application / models目录中。