【发布时间】:2016-09-19 07:31:50
【问题描述】:
我的节点js代码,
exports.updateprofiledetails = function (req, res) {
console.log(req.body)
var params = req.body;
var item =
{
firstname:params.firstname,
lastname:params.lastname,
phone:params.phone,
street:params.street
};console.log(item)
var id = req.params.id;
var record= db.collection('profile');
record.updateOne({'_id':id},{$set:item},(err, result) => {
if (err){ return console.log(err)
}
if(result){
response = {status:'success',data:result};
} else{
response = {status:'fail',data:[]};
}
res.send(response);
});
};
从上面我只给出了 2(firstname,lastname) 字段,但剩余的字段(phone.street) 被分配了空值。有人可以帮我解决这个问题。
【问题讨论】:
-
如果没有给出 phone 等的值,你到底想要什么?
-
嗨 abdulbarik,我有一个包含 4 个字段的表单要更新,但我只更新了 2 个字段,因此剩余的 2 个字段更新为空............跨度>
-
如果你不给任何值,它会保存为null,如果值为null,则在Schema中设置默认值
-
完整的文档在db中是什么样子的?