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);
});
});
대신 전체
local
객체를 업데이트하는
local
단지
email
속성을 대상으로
$set
키
'$ 설정을 시도해보십시오 {이름 : req.body.name " local.email ": req.body.email}''$ set : {name : req.body.name, local : {email : req.body.email}} '대신에 –