指定Doctrine2注释以描述复杂连接

时间:2013-09-23 09:54:48

标签: mysql symfony doctrine-orm

我有一个实体A,我希望与其他实体(也是A)相关联。

我通常会使用表格的加入实体(例如B)执行此操作 -

B.leftAssoc = A(1).id B.rightAssoc = A(2).id

然后我会加入使用SQL,如:

SELECT
  DISTINCT *
FROM
  a AS a1,
  a AS a2,
  b
WHERE
  (a1.id = 1234 AND a1.id = b.leftAssoc AND a2.id = b.rightAssoc)
  OR
  (a2.id = 1234 AND a2.id = b.leftAssoc AND a1.id = b.rightAssoc)

我想使用Doctrine 2注释来指定表,并让Symfony构建我需要的所有内容。

我知道如何通过自己手动创建表并使用DQL或QueryBuilder来完成它。但实际上我更希望实体知道如何获得关联。

有可能吗?

1 个答案:

答案 0 :(得分:0)

根据我的理解,你想要一个自我引用多对多关系的东西?

点击此链接:http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/association-mapping.html#many-to-many-self-referencing

如果你不这样做,请告诉我你想要什么。