我有一个包含用户集的简单数据库。这就是文档的样子:
{
username: "Joe",
age: 20,
friends: ["u2", "u5", "u6", "u7", "u11"]
}
我想创建一个返回类似
的查询{
username: "Joe",
age: 20,
total_friends: 5,
friends: ["u2", "u5", "u6"]
}
请注意,我只对前3位朋友进行了切片,因为我不希望在每次查询中都返回所有用户朋友。
如何在切片之前创建total_friends
字段?
这是我到目前为止所做的:
UserModel.findById( new Types.ObjectId(userId))
// what goes here??
.slice('friends', 3)
.populate('friends')
.exec((err, doc) => {...});