使用MongoDB查找ID .find()

时间:2017-10-19 16:37:14

标签: mongodb mongoose mongoose-schema

我正在尝试循环,但首先我需要做一个mongo查询来获取循环数据我的查询是这样的:

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();
        }
      });

我知道我需要在第1行的{}部分添加一些内容。如何使用req.user.id然后只使用author.id查找文档(见下文)

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

目前返回的示例文档:

{ _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: 'joe@example.com' } },

1 个答案:

答案 0 :(得分:1)

你可以做到

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();
    }
  });