2011-11-29 57 views
0

我是Zend中的新成员,我在application.ini中定义了一些使用多个db的行。在模块应用程序中找不到模型类

resources.multidb.sitgm.adapter = "pdo_pgsql" 
resources.multidb.sitgm.host = "localhost" 
resources.multidb.sitgm.username = "postgres" 
resources.multidb.sitgm.password = "pass" 
resources.multidb.sitgm.dbname = "mydb" 
resources.multidb.sitgm.isDefaultTableAdapter = true 

在我的应用引导我有一个函数:

public function _initDbRegistry() 
{ 
    $this->_application->bootstrap('multidb'); 
    $multidb = $this->_application->getPluginResource('multidb'); 
    Zend_Registry::set('db_sitgm', $multidb->getDb('sitgm')); 
} 

但是,当我已经迁移到模块squema,我有一个默认的模块,我增加了一个标准的引导。

class Default_Bootstrap extends Zend_Application_Module_Bootstrap 
{ 
public function _initDbRegistry() 
{ 
    //Do i must add something here to access application DB conf like app bootstrap???? 
} 
} 

在这一点上我如何可以调用应用程序配置怎么一回事,因为我得到我的默认模型类的错误,无法找到它。

class Default_Model_Base { 
    protected $db; 
    public $sql=""; 
    function __construct() { 
     $this->db = Zend_Registry::get("db_sitgm"); //HERE I GOT THE ERROR 
     $this->db->setFetchMode(Zend_Db::FETCH_OBJ); 
    } 
} 

在此先感谢

回答

0

你不必来定义你的模块引导的_initDbRegistry为好。您可以将其留在您的应用程序中Bootstrap.php

相关问题