ich ein Mongo-Schema habe, die wie folgt aussieht:
{
"_id" : ObjectId("58e4222497b2735ba3cd9ec4"),
"place" : "",
"plant" : "Test1",
"eventDate" : ISODate("2017-04-05T00:00:00Z"),
"event" : "Test123",
"toBeTested" : [
{
"_id" : ObjectId("58e453a07c9f94702ebac93d"),
"thingsTested" : [
"A1",
"A2",
"A3"
]
}
]}
ich Mungo bin mit einem einzigen Element von thingsTested
zu entfernen. Mein Code in Mungo ist:
Layout
.update(
{_id: req.params.parentid},
{$pull: {toBeTested: {thingsTested: 'A3'}}},
function (err, docs){
if (err) {
res.send(err);
}
res.json(docs);
}
);
Wie Sie sehen können, habe ich fest einprogrammiert, dass ich A3
vom thingsTested
Satz entfernt werden soll. Das angezeigte Verhalten ist jedoch, dass alle thingsTested
gelöscht wird.
Als Followup Frage, wie kann ich sicherstellen, dass der Mungo Befehl entfernt nur A3
in thingsTested
mit den _id
von 58e453a07c9f94702ebac93d
(das Kind ID)?
Danke!
Mögliche Duplikat [MongoDB mit Positions Operator ziehen] (http://stackoverflow.com/questions/26319733/mongodb-pull-with-positional-operator) – Veeram
nah, mit einem positionellen Operator für diese wäre falsch. – ChemicalRocketeer