mongoose / mongo将多个元素插入子文档

时间:2017-02-18 15:54:42

标签: mongodb mongoose

我正在尝试使用mongoose将多个项目插入子文档:

User.update(
   {'_id': userId, 'pages._id': pageId},
   { $push:
      {'pages.$.items':
          { $each: data }
      }
   }, function(err, result) {
            console.log(result); // prints { n: 1, nModified: 1, ok: 1 }
   }
);

我做错了什么?它既不会抛出错误也不会插入任何项目。

编辑:用户架构:

var PageSchema= new Schema({
    items: [{
        a: String,
        b: String
    }]
});
var UserSchema = new Schema({
    email: String,
    pages: [PageSchema]
});

mongoose.model('User', UserSchema);

我可以使用以下代码插入1个项目:

User.findOne({'_id': userId, 'page._id': pageId}).exec(function(err, user) {
    user.pages.id(pageId).items.push(data[0]);
    user.save();
});

但我想这不是插入多个元素的好方法。

0 个答案:

没有答案