2017-11-17 5 views
1

ich mit MomgoDb arbeite Ergebnisse für den folgenden Code (im Rahmen einer Get-Anforderung) zu erhalten:MongoDB-Lookup nicht mit tiefen id arbeitet

db.uiRepo.aggregate([ 
      {$match:{ "module.id": req.params.mid } }, 
      {"$lookup": 
       { 
        from: "privileges", 
        localField: "_id", 
        foreignField: "ui._id", 
        as: "actions" 
       } 
      } 
     ], {}, function(err, views) { 
      if (err) res.json({}); 
      res.json(views); 
     }) 

Jetzt ist das Problem, das $ Lookup-Teil, weil, wenn Ich entferne es, die Match-Funktion funktioniert gut.

Was mache ich falsch? Dank

+0

könnten Sie auch einige Beispieldaten aus Berechtigungen und UiRepo Sammlungen hinzufügen? –

+0

Wahrscheinlichkeiten sind, dass '" ui._id "' eigentlich eine "Zeichenkette" ist, wobei "_id" 'eine' ObjectId' ist. 9/10 * "Mein $ lookup funktioniert nicht" * Fragen sind genau aus diesem Grund. Wenn die Typen nicht übereinstimmen, erhalten Sie keine Ergebnisse –

Antwort

0

es gefunden:

Lookup Operation ist nicht auf der Version nicht unterstützt I wurde mit. Upgrade auf 3.4 behoben diese