2017-10-18 180 views
0

我有一個奇怪的問題,我的PhpUnit測試。 我使用Symfony3,Doctrine和DataFixtures實現OrderdFixutreInterface。 當我使用註釋@ ORM /列在實體我想在DataFixtures加載,它與Symfony3和Doctrine 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 \專欄部分工作都很好。 有人可以告訴我爲什麼嗎?

回答

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的FALSE爲false。你可以像@Column那樣在@JoinColumn中以同樣的方式精確它。

+1

它工作的很好,謝謝:)順便說一句,根據這個http://docs.doctrine-project.org/projects/doctrine-orm/en /latest/reference/annotations-reference.html#joincolumn \ @JoinColumns具有可爲空的默認TRUE,但\ @Column具有可空的defautl FALSE ..位凌亂我想.. – Jimi

+0

你是正確的根據文檔'可空'是默認'JoinColumn'爲TRUE,但'Column'默認爲FALSE(我其實從未注意到) – Kodoyosa