findOne中的findOne结果

时间:2016-04-11 01:05:21

标签: node.js mongoose

我一直在寻找这个问题,但似乎我无法找到确切的词语来寻找那些我无法找到答案的原因。无论如何,就是这样:

我有用户列表,每个用户都有好友列表。 (用户可以拥有相同的朋友)。我想首先找到用户的ID,然后是朋友列表中的朋友。

User :
 { firstUser, secondUser }

 firstUser: { name, friendList }
 secondUser: {name, friendList }

 friendList (of firstUser) : {
      { name: Jhon Doe, age: 5 }
      { name: mickey, age: 23 }
 }

 friendList (of secondUser) : {
      { name: Jhon Doe, age: 5 }
      { name: jane, age: 23 }
 }

正如你所看到的,我无法使用$ elemMatch和$ in,因为两个用户都可以拥有相同的朋友。

 User.findOne( {id: req.query._id }, function(err, user){
             //what to do here?
   });

1 个答案:

答案 0 :(得分:0)

假设您拥有该朋友的ID,您只需拨打var friend = user.friendList.id(friendId);

即可