У меня есть небольшая игра с ORM, но я изо всех сил пытаюсь выйти из стартовых блоков.Я знаком с Zend_Db и надеялся, что Doctrine будет работать аналогичным образом, но с большей гибкостью.
Я следовал различным учебным пособиям, чтобы интегрировать Doctrine с Zend Framework, которые доступны.Все эти уроки более или менее говорят одно и то же.
Я создал несколько базовых классов Doctrine_Record, и, насколько я могу судить, вы используете Doctrine_Table так же, как вы бы использовали Zend_Db_Table_Abstract.
IЯ еще не понял, как можно связать объект Record с объектом Table, но это другая история.
Проблема, с которой я сталкиваюсь, - это когда я пытаюсь получить экземпляр таблицы, используя ...
$role = Doctrine_Core::getTable('Admin_Model_RoleTable');
Я получаю серию фатальных ошибок ...
Catchable fatal error: Argument 2 passed to Doctrine_Table::__construct()
must be an instance of Doctrine_Connection, none given
Catchable fatal error: Argument 1 passed to Doctrine_Configurable::setParent()
must be an instance of Doctrine_Configurable, null given
Call to a member function addTable() on a non-object
Я не знаю, имеет ли это какое-либо отношение к автозагрузчикам, но поскольку модели таблиц входят в сферу примененияРесурсы модуля Я не думаю, что это будет проблемой.
Я должен добавить, что в моем загрузчике я добавил соединение, которое захватывает PDO Zend_Db только для этого теста.
$manager = Doctrine_Manager::getInstance();
$manager->connection($this->getResource('db')
->getConnection(), 'db');