簡體   English   中英

學說ManyToOne不會持續存在

[英]Doctrine ManyToOne does not cascade persist

我正在嘗試執行以下操作:

/**
 * @Entity
 */
class Player {

    /**
     *@Column
     *@Id
     */
     private $uuid; //gets assigned a Uuid in the constructor

    /**
     * @ManyToOne(targetEntity="Team", cascade={"persist"})
     * @JoinColumn(referencedColumnName="uuid")
     */
     private $team;

     public function setTeam(Team $team) {
         $this->team = $team;
     }

     //...
}

/**
 * @Entity
 */
class Team {
    /**
     * @Column
     * @Id
     */
    private $uuid; //gets assigned a Uuid in the constructor

    //...
}

$player = new Player;
$team = new Team;
$player->setTeam($team);
$entityManager->persist($player);
$entityManager->flush();

該團隊沒有持久化到數據庫中。

我不想調用$entityManager->persist($team)因為在我的情況下,團隊是在我不了解持久性的代碼的一部分中創建的。

我的期望是, cascade={"persist"}選項應使EntityManager也保留團隊。 為什么我的期望錯了或者我做錯了什么?

我沒記錯...這按預期工作!

再看一看,在將團隊添加到玩家之后,再也沒有過同花順。
再次閱讀我自己的問題,我意識到我錯過了什么...
我應該更頻繁地跟橡皮鴨說話,看來...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM