2016-09-12 1 views
0

J'essaie de trouver tous les fruits dans ma base de données où la couleur n'est pas rouge mais quand je lance la commande find ci-dessous, elle renvoie [object]. Qu'est-ce que je fais mal la base de donnéesTrouver l'objet de retour sur l'élément enfant

: mongoDB

"fruit": { 
    "color": [ 
     "red" 
    ] 
    } 

Chemin: server.js

var fruit = fruit.find({ 
        "fruit.color": { $nin: [ red ] }, 
        }).fetch(); 

Si je journal de la console sur le serveur, il suit retour précis ou chiffré.

console.log(fruit); 

{ color: [Object] } } ] 
+0

remarqué que vous utilisez le même nom de variable pour la collection et le résultat. – vijayst

+0

essayer de vérifier quel est cet objet .. console.log (fruit.color) – vdj4y

+1

console.log (JSON.stringify (fruit)). – RootHacker

Répondre

1

Votre find retourne un tableau d'objets, c'est pourquoi vous obtenez le résultat [object]. Vous devez itérer le résultat. Comme:

var fruits = fruit.find({ 
        "fruit.color": { $nin: [ red ] }, 
        }).fetch(); 

fruits.forEach(function (afruit) { 
      console.log(afruit.color); 
     });