Doctrine ORM,JoinColumn中的Coalesce

时间:2017-05-09 09:44:02

标签: doctrine-orm

我们现在有没有办法在关联的连接列中使用合并?

例如,汽车有很多部件。汽车可以与自身有关系。我想制作演示车,这是指另一辆车(原车)。但我不想复制汽车的所有部分。所以我想加入使用Coalesce。 join part.car_id = coalesce(car.car_id, car.id)。因此,我们将使用coalesce首先检查汽车是否为car_id,参考原车,如果是这样,它是一辆演示车,我们使用原车的车ID。如果不是使用汽车自己的身份证。例如,在调用原车时。

如果使用注释无法做到这一点。是否有可能以不同的方式?

1 个答案:

答案 0 :(得分:0)

无法定义关于学说关联的条件。始终在具体实体和字段之间定义关联。 它也不适用于关系数据库中的约束。

我认为你应该使用不同的设计来实现它。我建议引入新的实体Model并将parts关联到此实体,然后将CarModel相关联。