【发布时间】:2015-02-10 12:54:31
【问题描述】:
我有一个场景,我有一个文档,里面有一个子集合。现在,我想修改/更新子集合中的子文档之一。我想在修改子文档之前先匹配父文档和子文档。 我正在使用 mongoose/node.js 和 MongoDB
这是我的架构:-
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var HostSchema = new Schema({
aid : String,
cars : [{
carid : String,
status_code: Number
}]
});
module.exports = mongoose.model('Host', HostSchema);
这是我的代码:-
router.route('/xxx/').post(function(req, res) {
Host.findOne({
_id : req.body.xid
}, {
cars : {
carid : req.body.yid
}
}, function(err, host) {
if (err) {
res.send(err);
} else {
// What to do?
}
});
});
我可以打印整个子集合,但我希望只打印一个与子集合匹配的文档。 我的目标是修改子集合的文档中的status_code字段
【问题讨论】:
标签: node.js mongodb mongoose nosql