我的PhpUnit测试有一个奇怪的问题。 我使用Symfony3,Doctrine和DataFixtures实现了OrderdFixutreInterface。 当我在实体中使用注释@ ORM / Column时我想加载DataFixtures,它以
结尾THE ERROR HANDLER HAS CHANGED!
Process finished with exit code 255
我在实体中的定义如下:
/**
* @var SlotPosition
*
* @ORM\Column(name="slot_position_id", nullable=false)
* @ORM\ManyToOne(targetEntity="SlotBundle\Entity\SlotPosition")
*/
private $slotPosition;
如果我删除@ORM \ Column部分一切正常。 有人能告诉我为什么吗?
答案 0 :(得分:0)
我想这可能与你没有准备的@JoinColumn发生冲突。
@JoinColumn是期权,但如果你在这种情况下不准确,我认为学说会考虑@ORM\JoinColumn(name="slotPosition_id", referencedColumnName="id")
。我不是专家,所以当你删除@Column时我不明白为什么它可行,但它可能来自那里。
/**
* @var SlotPosition
*
* @ORM\ManyToOne(targetEntity="SlotBundle\Entity\SlotPosition")
* @ORM\JoinColumn(name="slot_position_id", referencedColumnName="id")
*/
private $slotPosition;
注意:对于@Column,Nullable默认为FALSE。你可以在@JoinColumn中以与@Column
中相同的方式对其进行精确处理