[英]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.