何时在学说2中使用ManyToOne和ManytoOne B.

时间:2018-06-08 10:03:47

标签: symfony doctrine entity id

假设有两个实体叫做候选人和经验。一个candiat可以增加许多经验。一个经验可以有一个候选人。我已经知道这是多对一的关系。但我想知道ManyToOne或ManyToOne bidirectionnelles

enter image description here

1 个答案:

答案 0 :(得分:0)

单向和双向几乎相同,区别在于当它是单向的时你只能做$ candidat-> getExperience(),当它是双向的你可以同时做两个$ candidat-&gt ; getExperiences()和$ experience-> getCandidat(),两个实体上都有两个字段

这是一个相当合乎逻辑的问题,在这里我建议它是一种单向关系,因为如果没有候选人,经验是没有意义的,所以如果你有一个,你就拥有另一个。合适的双向关系的一个例子是所有者和汽车,汽车可以在没有所有者的情况下存在,因此允许$ car-> getOwner以及$ owner-> getCars()

是合乎逻辑的。

这还取决于你打算如何使用这种关系,你是否需要这两种功能或者没有......