Search code examples
zend-frameworkzend-db-table

Can I set the Database adapter to use permanently from within a Zend_Db_Table_Abstract Class?


I have 2 databases that my site uses including a central user database that relates to other site-specific databases.

Sometimes it is adequate to call new User(array('db'=>'adapter1')); (but never convenient); other times, though, such as when declaring relationships between tables on different databases, there is no way to do this.

Does anyone know a way to specify which database adapter to use from within the Zend_Db_Table_Abstract class?

Thanks!


Solution

  • Getting back to this pretty late, but none of the answers here quite did it for me. A select few of my database models needed to use 'tdb' and the following code was added to each of those classes to have that happen automatically:

    protected function _setupDatabaseAdapter()
    {
        $this->_db = Zend_Registry::get('tdb');
        parent::_setupDatabaseAdapter();
    }
    

    I thank you all for your suggestions along the way!