我经历了一个奇怪的" bug"。
我在一个实体上有2个关联"几乎相同" :
/**
* @ORM\OneToOne(targetEntity="TaxeApprentissage\Entity\Collecteur\Parametres", mappedBy="collecteur")
*/
private $parametres;
/**
* @ORM\OneToOne(targetEntity="TaxeApprentissage\Entity\Collecteur\ParametresEdition", mappedBy="collecteur")
*/
private $parametresEdition;
当延迟加载发生时,我在属性TaxeApprentissage\Entity\Collecteur\ParametresEdition
和$parametres
中得到完全相同的对象$parametresEdition
。
但是当我扭转这种联想时:
/**
* @ORM\OneToOne(targetEntity="TaxeApprentissage\Entity\Collecteur\ParametresEdition", mappedBy="collecteur")
*/
private $parametresEdition;
/**
* @ORM\OneToOne(targetEntity="TaxeApprentissage\Entity\Collecteur\Parametres", mappedBy="collecteur")
*/
private $parametres;
一切都很完美。我得到了每个协会的正确对象。
是否由实体命名几乎相似的事实引起?
答案 0 :(得分:1)
可能是因为你在拥有方犯了错误?另一方面(Parametres
和ParametresEdition
内部)的列定义是什么样的?你不会在你的问题中显示它们。
您可能有两次inversedBy="parametres"
或inversedBy="parametresEdition"
。
@ORM\OneToOne(targetEntity="TaxeApprentissage\Entity\Collecteur\Collecteur", inversedBy="????")
@ORM\OneToOne(targetEntity="TaxeApprentissage\Entity\Collecteur\Collecteur", inversedBy="????")