如果没有孩子,请删除父母

时间:2016-10-26 05:58:31

标签: symfony doctrine-orm doctrine

我有2个具有ManyToOne关系的实体。当我删除一个孩子时,我只想在没有其他孩子绑定到父母的情况下删除父母。

但我不明白该怎么做。如果我进行级联删除,我遇到了一个约束错误,因为当我删除一个孩子但是它有其他孩子时,Doctrine会尝试删除父。使用orphanRemoval是不可能的,因为孩子们在很多方面,如果我把它放在一边它不起作用(我从不直接删除父母)。

1 个答案:

答案 0 :(得分:0)

如果您在删除孩子之前取回父母,然后在删除孩子后检查父母的剩余子女,以及是否还没有删除父母,该怎么办?

$parent = $child->getParent();
//remove $child
if(count($parent->getChildren())==0){
    //delete $parent
}