2016-07-20 14 views
0
{ 
    "_id": "32dkd9020dl", 
    "isTrue": true, 
    "CategoriesAgentOf": [ 
     "Field1", 
     "Field2", 
     "Field3", 
    ], 
} 

Wenn ich Field2 entfernen möchte, wie kann ich das tun? Wenn jedes Feld einen Wert wie "Feld2": Wert hätte, wäre es einfach, aber dieser Weg scheint unmöglich. Hier ist, was ich versuche:MongoDB - Entfernen eines einzelnen Felds in einem eingebetteten Dokument

removeField(email, field2){ 

    return Meteor.users.update({'emails.address': email}, { 
     $pull: { 
     "CategoriesAgentOf": { 

      field2 
     } 
     } 

    }) 

    }, 

Dies funktioniert nicht.

Antwort

0

ich ursprünglich das Feld wie folgt definieren:

Meteor.users.update({"emails.address": (email)},{$push :{"CategoriesAgentOf": 
     category 
    }}); 

Ich hatte Klammern Kategorie wie so hinzuzufügen:

Meteor.users.update({"emails.address": (email)},{$push :{"CategoriesAgentOf": { 
     category 
    }}}); 

Und änderte mein Pull-Befehl an diese:

$pull: { 
     'CategoriesAgentOf': { 

      category: 
      cat 

     } 
     } 
Verwandte Themen