Những gì bạn đang hướng tới không phải là một cấu trúc hợp lệ. Những gì bạn có thể muốn thay vào đó là một giản đồ trong đó NetworkList
trực tiếp chứa một mảng ObjectIds của bạn bè của người dùng:
var NetworkSchema = new Schema({
UserID: {
type: String,
default: '',
trim: true
},
NetworkList: [{
type: Schema.ObjectId,
ref: 'User'
}]
});
Tài liệu của bạn khi đó sẽ trông giống như sau:
{
"_id" : ObjectId("548adbc8b7eac44013bf188d"),
"NetworkList" : [
ObjectId("5486fab40bc27314276be8cf")
],
"UserID" : "547eaaab6c39471c3f5aebb6",
"__v" : 0
}
Sau đó, bạn có thể thêm một người bạn mới vào NetworkList
sử dụng $push
toán tử như thế này:
exports.update = function(req, res) {
var query={'UserID': req.body.UserID};
var update = {$push: {'NetworkList': req.body.FriendID}};
Network.findOneAndUpdate(query, update, function(err, doc){ ... });
};