我的情況是,我有N個地址和N個聯繫人信息供我的用戶使用,這些信息存儲在不同的收藏夾中。如何使N-1插入/更新貓鼬同步?
我應該將它存儲在同一個集合中嗎?如果沒有,我如何使下面的代碼段工作?
請記住,Mongoose查詢是Asyn,因此,即使第一個地址被壓入他的模型,用戶也可以被保存。
createUser: function(req, res) {
var _user = new Models.User(req.body);
for (var item in _postData.address) {
var _address = new Models.Address(_postData.address[item]);
_address.save(function(err) {
if (err) { res.send({status: 500, message: 'Error while saving address'}); return; }
_user.address.push(_address);
});
}
for (var item in _postData.contacts) {
var _contact = new Models.Contact(_postData.contacts[item]);
_contact.save(function(err) {
if (err) { res.send({status: 500, message: 'Error while saving contact'}); return; }
_user.contacts.push(_contact);
});
}
_user.save(function(err) {
if (err) { res.send({status: 500, message: 'Error while saving user'}) return; };
res.send(_user);
});
},