我目前正在网上聊天框上做一个项目。然而,当我需要通过获取朋友的名字来获取用户的朋友的ID时(例如,当我在我的friendList中有Ivan时,我可以在数据库中获取他的id)登录服务器时,我被困住了。我可以得到这位朋友的名字,比如伊万,但我尝试了很多次,仍然不知道如何使用我发现的名字在服务器中找到伊万的身份。我正在使用mongodb和node.js来完成这个项目。这是我目前的代码:
router.get('/load', function(req, res)
var db = req.db;
var collection = db.get('userList')
if(req.session.userId)
{
var id = req.session.userId;
collection.find({"_id": id},{fields:{"_id":0, "friends.name":1}}, function(err, docs)
res.json(docs);
)}
}
这就是数据库结构的样子:
{
"_id": ObjectId(5a23e06aa11f6589e02d8fcf),
"name": "Ken",
"password": "12345678",
"friends":[
{
"name" : "Andy",
"lastmsg": "0"
},
{
"name" : "Ivan",
"lastmsg" : "1"
}
]
}
答案 0 :(得分:0)
你试过吗
collection.findOne({"friends.name": "Ivan"}, function(err, docs)
res.json(docs);
)}