Symfony2和Doctrine2 - 设置onDelete

时间:2014-04-01 12:30:20

标签: php mysql symfony doctrine-orm

我有两个实体:

手稿和任务。

在任务表中,我有手稿ID和一些额外数据。 此外,在我有任务实体

 /**
 * @ORM\OneToOne(targetEntity="Manuscript")
 * @ORM\JoinColumn(name="manuscript_id", referencedColumnName="id", onDelete="CASCADE")
 **/
private $manuscript;

但我想在删除菜单时删除具体任务。

当试图删除手稿时,我得到了:

SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails

是否可以使用onDelete执行此操作,还是应该手动删除任务?

谢谢。

1 个答案:

答案 0 :(得分:0)

完成后添加:

/**
 * @ORM\OneToOne(targetEntity="Task", mappedBy="manuscript", cascade={"remove"})
 */
private $task;

在手稿实体中。