Hola amigos, de vuelta por acá.
Estoy trabajando con una aplicación ZF y debo utilizar 2 bases de datos, estoy siguiendo el manual pero hay algo que no lo tengo claro, explico.
application.ini
Código PHP:
Ver original;bases de datos
resources.multidb.db1.adapter = "pdo_mysql"
resources.multidb.db1.host = "localhost"
resources.multidb.db1.username = "d"
resources.multidb.db1.password = "f"
resources.multidb.db1.dbname = "a"
resources.multidb.db2.adapter = "pdo_pgsql"
resources.multidb.db2.host = "localhost"
resources.multidb.db2.username = "d"
resources.multidb.db2.password = "f"
resources.multidb.db2.dbname = "b"
resources.multidb.db2.default = true
En el bootstrap registro los adapters:
Código PHP:
Ver originalprotected function _initDbAdaptersToRegistry()
{
$this->bootstrap('multidb');
$resource = $this->getPluginResource('multidb');
$resource->init();
$Adapter1 = $resource->getDb('db2');
$Adapter2 = $resource->getDb('db1');
Zend_Registry::set('Adapter1RegKey', $Adapter1);
Zend_Registry::set('Adapter2RegKey',$Adapter2);
}
Llamada del modelo en el controlador:
Código PHP:
Ver original$autos = Default_Model_Autos();
$vertodos = $autos->vertodos();
el modelo:
Código PHP:
Ver originalclass Default_Model_Autos extends Zend_Db_Table_Abstract
{
protected $_name = 'autos';
protected $_primary = 'id';
protected $_coneccion = Zend_Registry::get('Adapter2RegKey');
function vertodos(){
$todos = $this->_coneccion->fetchAll();
return $todos;
}
Si alguien puede ver donde está el error le agradezco.
PD:Me llamó la atención que no utilice Zend_Db::factory(... pero así está en el manual.