Wie generieren Sie mongodb-Objekt-id für ein sub-Dokument auf einfügen

Einfügen von einem Dokument, das auch sub-Dokumente. Ich mache dies über cli. Wie mache ich mongodb generieren eine Objekt-id für die Warnungen sub-Dokument aufnehmen? Ich möchte etwas wie die folgenden, aber das funktioniert nicht von cli.

db.user.insert(
{
    "Email" : "[email protected]",
    "Domain" : "other",
    "Type" : "local",
    "FName" : "Andy",
    "Alerts" : [ 
        {
            "_id" : new ObjectId(),
            "Keyword" : "sales",
            "Frequency" : {
                "Type" : "daily"
            },
            "IsActive" : true
        }, 
        {
            "_id" : new ObjectId(),
            "Keyword" : "customer service",
            "Frequency" : {
                "Type" : "daily"
            },
            "IsActive" : true
        } 
    ]
}
)
  • Es arbeiten soll. Ich kann Ausschneiden und einfügen, und die ObjectId ist, wo man Sie definiert hat.
  • Was wird eingefügt, wenn Sie versuchen, die? db.user.find({ Email: "[email protected]" })
  • Seine feinen arbeiten..
  • Eigentlich war dieses laufen in einem robomongo legen form und nicht cli. Mein Fehler. Es funktioniert in der Tat von cli.
  • Ich sehe, dass es funktioniert wie ein Befehl aus der cli. Aber gibt es eine Möglichkeit, diese Arbeit zu machen die von Einfügen/Bearbeiten Dokument-Formular? Natürlich ohne die db.Benutzer.insert() um ihn herum. Ich bekomme immer "Unable to parse JSON".
  • Dies scheint ein großes Problem mit Robomongo die JSON-parser.

InformationsquelleAutor Andy N | 2014-03-17
Schreibe einen Kommentar