学说双向一对一关系

时间:2014-07-10 16:59:55

标签: php symfony doctrine-orm

我知道在symfony2 / doctrine中,为了创建双向关系,我们必须将其分解为两个实体的注释。

我需要的是通过仅修改一个实体的注释来创建这种双向关系,这意味着在另一个实体注释中没有关于另一个实体的注释。

这可能吗?

1 个答案:

答案 0 :(得分:2)

您所描述的是单向关联,文档:http://doctrine-orm.readthedocs.org/en/latest/reference/unitofwork-associations.html?highlight=bidirectional表示遵循实现双向关联的规则:

  

以下规则适用于双向关联:

     
      
  • 反面必须使用OneToOne,OneToMany或ManyToMany映射声明的mappedBy属性。 mappedBy属性包含拥有方的关联字段的名称。
  •   
  • 拥有方必须使用OneToOne,ManyToOne或ManyToMany映射声明的inversedBy属性。 inversedBy属性包含反面的关联字段的名称。
  •   
  • ManyToOne始终是双向关联的拥有方。
  •   
  • OneToMany始终是双向关联的反面。
  •   
  • OneToOne关联的拥有方是包含外键的表的实体。
  •   
  • 您可以自己选择多对多关联的拥有方。
  •   

所以我无法确定这是否可能,但在任何情况下都可能违反规则,这可能会导致一些错误。为什么你还需要这种关联?