【发布时间】:2017-08-31 03:32:57
【问题描述】:
我有一个User 模型,每个user 文档都有name 字段,它是String 和friends 字段,它是一个整数的array,它包含该用户的其他用户的id's是朋友。
每当我想在朋友数组中创建一个具有一个 id 的新用户文档时,我必须执行三个步骤: 1. 创建具有特定名称的新用户; 2. 保存该用户; 3. 通过将新朋友 id 添加到数组中来更新此用户的朋友字段。
我想知道是否有另一种更有效的方法来实现相同的结果。到目前为止,这是我的代码:
var User = mongoose.model('User',{
friends: {
type: [Number],
required: false
},
name: String
});
//cretae new user document
var user = new User ({
name: name
});
user.save(function(err){
if(err){
console.log("something went wrog, read below");
console.log(err);
}else{
User.update({'name': name}, {
$addToSet: { 'friends': newFriendId}
},function(err, count) {
if(err){
console.log(err);
}else{
console.log(count);
}
});
}
});
【问题讨论】:
-
为什么在用户保存后使用更新?
标签: arrays node.js mongodb mongoose mongoose-schema