首页 > 解决方案 > 学说将聚合根和实体保存在同一张表上

问题描述

我有一个Trip与 table 相关的实体trips。不幸的是,表结构很大(38 个字段)。

我可以将行程分解为多个实体,因此行程有一些组合实体,例如Route代替 originAddress、originLatitude、originLongitude、destinationAddress 等...

但我不知道是否可以将 ORM ( Doctrine) 映射到同一张表上的这些字段。AFAIK 一个实体只能与一张表相关,反之亦然。

标签: phpsymfonydoctrine

解决方案


我用Embeddables解决了它。

从 AR 使用@embeddable指向另一个@embedded实体的属性。使用@embedded,您可以指定可以将字段映射到数据库的哪些列。这样,您可以对多个类使用组合,这些类将映射到数据库上的同一记录。


推荐阅读