2017-10-19 6 views
0

Je suis en train de boucler à travers quelque chose, mais d'abord je dois faire une requête mongo pour obtenir les données de la boucle ma requête est la suivante:Trouver ID à l'aide MongoDB .Find()

AP.find({}, function(err, allAP) { 
     var ID = req.user.id; 
     if(err){ 
      console.log(err); 
     } else { 
      res.locals.aps= allAP; // Set the data in locals 
      next(); 
     } 
     }); 

Je sais que je dois ajouter quelque chose dans la {} partie sur la ligne 1. Comment dois-je prendre req.user.id puis trouver uniquement des documents avec le author.id (voir ci-dessous)

author: { 
     id: { 
     type: mongoose.Schema.Types.ObjectId, 
     ref: "User" 
     }, 
     email: String 
    } 

document Exemple actuellement retourné:

{ _id: 59e517230a892a26cb1b7635, 
    manufacturer: 'other', 
    model: 'Test Model', 
    bands: '2.4', 
    channel: 11, 
    notes: 'I am a test note for the first access point', 
    __v: 0, 
    author: { id: 59d7f98a77fcc221d6e3c93d, email: '[email protected]' } }, 
+0

'AP.find ({ 'author.id': req.user.id}, la fonction (err, allAP) {' – Mikey

+0

@Mikey Merci beaucoup cela a fonctionné, Je savais que ça devait être proche de ça. J'ai essayé sans les citations, mais il a échoué ne savait pas les citations travaillées dans la requête mongo (ouais je suis nouveau haha) –

Répondre

1

Vous pouvez faire

AP.find({"author.id":req.user.id}, function(err, allAP) { 
    if(err){ 
     console.log(err); 
    } else { 
     res.locals.aps= allAP; // Set the data in locals 
     next(); 
    } 
    }); 
+0

Merci beaucoup cela a fonctionné, je savais que cela devait être proche de cela. J'ai essayé sans les guillemets, mais il a échoué ne savait pas les guillemets travaillés dans la requête mongo (ouais je suis nouveau haha) –

+0

@JoshKirby Le premier argument de 'find()' est un objet JavaScript. Parfois, comme dans cette situation, une clé d'un objet [doit avoir des citations] (https://stackoverflow.com/questions/12991969/js-object-keys-with-or-with--quotes). – Mikey