2013-10-15 7 views
5

Ich habe begonnen, Mongo zu lernen. Bei der folgenden Sammlung, etwa Posts, wie würde ich einen neuen Kommentar in ein bereits vorhandenes Dokument einfügen? Die Beispiele, die ich auf der mongo-Website gesehen habe, sind für "einfache" Sammlungen. Danke für die Hilfe.Mongo: Wie füge ich ein anderes Filialdokument in ein vorhandenes Dokument ein

{ "_id" : ObjectId("510a3c5382d395b70b000034"), 

    "authorId" : ObjectId("..."), 
    "comments" : [ 
    { "_id" : ObjectId("..."), 
     "authorId" : ObjectId("..."), 
     "content" : "", 
     "createdAt" : Date(...) } ], 
    "content" : "Some" } 
+0

Lesen Sie die Dokumentation für die verfügbaren Array Operatoren, die Sie mit 'update' verwenden können: http://docs.mongodb.org/manual/reference/ operator/update/# array – JohnnyHK

Antwort

8

Sie können so etwas wie dies versuchen:

db.posts.update({ _id: ObjectId("510a3c5382d395b70b000034") }, 
    { 
    $push: { comments: { "_id" : ObjectId("..."), 
    "authorId" : ObjectId("..."), 
    "content" : "", 
    "createdAt" : Date(...) } } 
    }) 
+2

Danke. Hier ist wieder ein Code, der für alle Interessierten funktioniert. 'Db.posts.update ({_id: ObjectId ("5121908755734d2f29000123")}, { $ Push: {Kommentare: { "authorid": ObjectId ("50d013076a2208d3060000a7"), "content": "Einige Inhalte wieder" }} }) ' – Harvester316

Verwandte Themen