Symfony Doctrine2:如何使用两列(或组合键)链接实体?

Symfony Doctrine2:如何使用两列(或组合键)链接实体?,symfony,join,doctrine-orm,multiple-columns,composite-key,Symfony,Join,Doctrine Orm,Multiple Columns,Composite Key,我一直在试图从Doctrine2文档和互联网上找到这个与composite相关的问题的答案,但到目前为止还没有确定的线索 为了保持简洁,我需要链接3个实体:Object、Grid和GriddingSquare。一个对象位于栅格中,更具体地说,位于一个GriddingSquare中。栅格由一个或多个栅格正方形组成 在不易修改的源数据库中,GriddingSquare由“GridID”整数和“GridSquareLabel”字符串唯一标识。因此,这两列都位于对象表和实体以及GriddingSquar

我一直在试图从Doctrine2文档和互联网上找到这个与composite相关的问题的答案,但到目前为止还没有确定的线索

为了保持简洁,我需要链接3个实体:Object、Grid和GriddingSquare。一个对象位于栅格中,更具体地说,位于一个GriddingSquare中。栅格由一个或多个栅格正方形组成

在不易修改的源数据库中,GriddingSquare由“GridID”整数和“GridSquareLabel”字符串唯一标识。因此,这两列都位于对象表和实体以及GriddingSquare表和实体中

我尝试了以下方法,但似乎无法奏效:

对象实体:

/** *@var\Grid * *@ORM\ManyToOnetargetEntity=网格 *@ORM\JoinColumns{ *@ORM\JoinColumnname=GridID,referencedColumnName=GridID * } */ 私有$gridid; /** *@var字符串 * *@ORM\Columnname=GridSquareLabel,type=string,length=20,nullable=true */ 私人标签; /** *@var\cdbgridingsquares * *@ORM\ManyToOnetargetEntity=CDBGridingSquares *@ORM\JoinColumns{ *@ORM\JoinColumnname=GridID,referencedColumnName=GridID, *@ORM\JoinColumnname=GridSquareLabel,referenceColumnName=GridSquareLabel * } */ 私人广场;; GriddingSquare实体:

/** *@var\Grid * *@ORM\ManyToOnetargetEntity=网格 *@ORM\JoinColumns{ *@ORM\JoinColumnname=GridID,referencedColumnName=GridID * } */ 私有$gridid; /** *@var字符串 *@ORM\Columnname=GridSquareLabel,type=string,nullable=false */ 私人标签; 尝试使用Doctrine2文档中的以下建议,但尽管这在技术上是一个“复合键”问题,但我似乎找不到一个例子来帮助我理解我需要做什么,以及