0
我试图更新另一个对象,但更新对象时替换所有信息。在MongoDB中更新对象内的字段
结构
var userSchema = mongoose.Schema({
local : {
email : {type: String, unique: true},
password : String
}
name: String
});
之前更新
用户
{
name = 'foo',
local {
email: "[email protected]",
password: "foopass"
}
}
后更新
{
name = 'foo',
local {
email: "[email protected]"
}
}
这是我的查询:
router.put('/:id', function(req, res) {
User.findByIdAndUpdate(req.params.id, {
$set: { name: req.body.name, local: {email: req.body.email} }
}, { upsert: true },
function(err, obj) {
return res.json(true);
});
});
尝试'$组:{名称:req.body.name“ local.email“:req.body.email}而不是'$ set:{name:req.body.name,local:{email:req.body.email}}' – 2014-09-26 16:06:31