2017-07-26 4 views
0

Datenbank: Mongo 3.4+ NodeJS: v6.9.4 OS: Centos 7+Loopback Suche zurückkehrt Leere

In Mongo Shell folgenden Befehl ein Rückergebnis,

db.processticket.find({"parentProcessID": "5978ab9f82c56ec868d0d002"}) 

jedoch folgende Code/findOne gibt leeres Ergebnis zurück

app.models.processticket.findOne({ 
       where: {"parentProcessID": "5978ab9f82c56ec868d0d002" } 
      }, function(err, result) { 
+0

Was ist der Wert von "err"? – haotang

+0

Kein Fehler. Der Wert ist leer, auch wenn Loopback explorer.Is das wegen Mongo-Sicherheit versucht? –

+0

Gleiches Problem hier, Abfrage der Find-Methode mit ID gibt das Objekt zurück, aber mit jedem anderen Parameter gibt ein leeres Array zurück, haben Sie irgendeine Lösung gefunden? – Hadh

Antwort

1

Sie können das Flag strictObjectIDCoercion in der Modelldefinitionsdatei verwenden. Reference

+0

Verwenden Sie als ' "Optionen": { "validateUpsert": true, "strictObjectIDCoercion": true }, ......' –

0

Bitte umbrechen Sie den Wert von parentProcessID in ObjectId-Funktion. Da Mongo ID-Werte als ObjectId in Ihrer Wo-Abfrage speichert, müssen Sie den Wert Ihrer ParentProcessID mit ObjectId-Funktion verzerren. Sie können die ObjectID-Funktion im nativen mongodb-Modul finden

const ObjectID = require ('mongodb'). ObjectID;

Verwandte Themen