Смешивание Zend_Db с классами ORM - PullRequest
3 голосов
/ 02 октября 2010

Zend имеет Zend_Db, но это не полная ORM.У меня уже есть разделы приложения, написанные с использованием Zend_Db.Однако я хочу интегрировать полный ORM в приложение, чтобы использовать его для более сложных операций с базой данных, но я не хочу переписывать существующие завершенные действия.

Те, кто более опытен с ZendFramework, вы видите проблему с использованием Zend_Db в некоторых действиях и ORM в других действиях?Могут ли сгенерированные Zend_Db классы сосуществовать с классами базы данных, сгенерированными ORM?Что если бы я использовал оба класса даже в одном действии?Я не вижу конфликта там, но я не так хорош с MVC или ORM, поэтому я могу пропустить большой конфликт.

1 Ответ

2 голосов
/ 02 октября 2010

Я довольно много работал над Zend_Db в версии 1.0 ZF, и я тоже немного использовал Doctrine.

Не должно быть никакого конфликта между Zend_Db и другим ORM. Однако объекты, извлеченные через интерфейс Zend_Db, не будут знать об объектах, извлеченных через другой интерфейс ORM, например, Учение и наоборот.

Так что, если ваш другой ORM попытался проявить смекалку в отношении пакетных фиксаций в базе данных, вы бы хотели заставить его фиксироваться перед попыткой загрузки данных из тех же строк в объекте Zend_Db. И аналогично в обратном порядке.

Тем не менее, ни в одной из библиотек ORM не было бы ничего, что помогло бы вам управлять этими делами, поэтому вы должны знать, как ведет себя каждый ORM. Похоже, вы настраиваете себя на большую работу, чтобы приспособиться к неплотным абстракциям , и вам лучше переписать существующий код Zend_Db.

...