一个实体到许多实体symfony

时间:2016-05-18 13:10:14

标签: php symfony orm doctrine entity

使用symfony上的学说,查看链接到单个剩余列上的多个实体的实体。 例如:

实体引擎扩展两个实体

  • 实体飞机
  • 实体汽车

one entity to many entities

我想在引擎中使用单个列,因为我的链表非常多。

我无法找到这种方案中的最佳做法。 这个有可能?怎么样?

提前致谢

1 个答案:

答案 0 :(得分:1)

您可以使用' Class Table Inheritance'执行此操作。您的代码将如下所示:

namespace MyProject\Model;

/**
 * @Entity
 * @InheritanceType("JOINED")
 * @DiscriminatorColumn(name="discr", type="string")
 * @DiscriminatorMap({"car" = "Car", "plane" = "Plane"})
 */
class Vehicle
{
    // ...
}

/** @Entity */
class Plane extends Vehicle
{
    // ...
}


/** @Entity */
class Car extends Vehicle
{
    // ...
}

这解决了您的Engine表上只有一个外键的问题。当您有其他人共享时,它还可以帮助您获得更清晰的代码。属性(例如制造日期)