繁体   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