1
我正試圖從gallery中刪除galleryhasmedia。如何從gallery中刪除galleryhasmedia sonatamediabundle
但是畫廊實體沒有removegalleryhasmedia或其他東西。
所以我做了一個笨拙的方式,但它不工作。
$em = $this->getDoctrine()->getManager();
$firstGhmArray = $gallery->getGalleryHasMedias();
echo count($gallery->getGalleryHasMedias()) // before count
$afterGhmArray = array();
foreach ($firstGhmArray as $ghm){
if ($ghm->getId() == $id){ // id is the target id to delete
//delete
}
else {
array_push($afterGhmArray , $ghm);
}
$gallery->setGalleryHasMedias($afterGhmArray);
}
echo count($gallery->getGalleryHasMedias()) // after count
$em->persist($gallery);
$em->flush();
我想如果galleryHasMedias是正常的數組集合。
我可以用這個過程刪除元素。
我需要爲galleryhasmedia做更多的事情?
感謝您的回覆,但結果是一樣的。我認爲堅持不清除數組有問題。我可以正確清除對象數組,但無法更新數據庫。只是猜測雖然..... – whitebear
你可以嘗試foreach($ galleryHasMedias作爲$ media){$ em-> remove($ media);} –