【发布时间】:2016-06-27 21:19:48
【问题描述】:
你能列出与 Doctrine 相对的原生 ORM 的优缺点吗?
ZF1 为我提供了非常先进的原生 ORM(Zend_Db_Table 和 Zend_Db_Table_Row),Zend\Db\TableGateway\TableGateway 和 Zend\Db\RowGateway\RowGateway 是这个的继续。为什么大多数人尝试使用 Doctrine2,尽管它体积庞大,这是主要原因?
附:对我来说,即使是“存储库”这个词也不与数据库相关联..
【问题讨论】:
-
您无法真正进行比较,因为 ZF1 和 ZF2 都使用您熟悉的适配器和行表网关模式来实现数据库抽象。他们确实不但是提供了一个对象关系映射器(ORM),比如 Doctrine 2。
-
但最后一个示例,在此处描述 framework.zend.com/manual/current/en/modules/… - 获取活动记录集。我们可以手动将 Set 类放入 TableGateway 中,我们可以操作 ActiveRecord 类。我们可以选择适配器来选择设置。为什么这不是 ORM?
-
如果你想使用
Entities,更好的选择是Doctrine。否则,您需要创建/编写一些东西来处理Entity依赖项。当然还有很多 TableGateway 代码。
标签: zend-framework doctrine-orm zend-framework2 doctrine-odm