Arrays Node.js Mongoose如何保存新文档并向数组字段添加新值
我有一个Arrays Node.js Mongoose如何保存新文档并向数组字段添加新值,arrays,node.js,mongodb,mongoose,mongoose-schema,Arrays,Node.js,Mongodb,Mongoose,Mongoose Schema,我有一个用户模型,每个用户文档都有名称字段,它是字符串和朋友字段,它是一个整数数组,其中包含该用户朋友的其他用户的id 每当我想在friends数组中创建一个具有一个id的新用户文档时,我必须执行三个步骤:1。创建具有特定名称的新用户;2.保存此用户;3.通过向数组中添加新的好友id来更新此用户的好友字段 我想知道是否有另一种更有效的方法可以达到同样的效果。以下是我目前的代码: var User = mongoose.model('User',{ friends: {
用户
模型,每个用户
文档都有名称
字段,它是字符串
和朋友
字段,它是一个整数数组,其中包含该用户朋友的其他用户的id
每当我想在friends数组中创建一个具有一个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);
}
});
}
});
为什么在用户保存之后才使用更新?
var User = mongoose.model('User',{
friends: {
type: [Number],
required: false
},
name: String
});
//cretae new user document
var user = new User ({
name: name,
friends : [newFriendId]
});
user.save(function(err){
if(err){
console.log("something went wrog, read below");
console.log(err);
}else{
}
});