, так что я получил эту встроенную структуру, которая выглядит примерноУдалить встроенный MongoDB документ с помощью PHP
{
"_id" : ObjectId("529246fe6803fa2f1c16b7a7"),
"title" : "presentation 0",
"description" : "It's an awesome presentation about presentations, dawg!",
"timestamp" : " 20:32:03",
"slides" : [
{
"_id" : ObjectId("529246fe6803fa2f1c16b7a8"),
"elements" : [
{
"_id" : ObjectId("529246fe6803fa2f1c16b7a9"),
...
},
...
},
...
}
Где мои корневые элементы презентация.
Теперь я хочу, чтобы удалить слайды и элементы, используя их идентификаторы.
Я использую
$result = $collection->update(
array('_id' => $presentationId),
array('$pull' => array('slides' => array('_id' => $slideId))
));
удалить слайды, который работает.
Я попытался
$result = $collection->update(
array('_id' => $presentationId),
array('$pull' => array('slides.elements' => array('_id' => $elementId))
));
для удаления элементов, но это не работает ...
Спасибо!
спасибо! в PHP это db.coll.update ({_id: presId, "slides._id": slidesId}, {$ pull: {"slides. $. Elements": {"slides.elements._id": elementId "} }}) – tpei
Не то, что я сказал? :) –
О, извините, я имел в виду в PHP это db.coll.update ({_id: presId, "slides._id": slidesId}, {$ pull: {"слайды . $. elements ": {" _ id ": elementId"}}}) – tpei