我正在尝试使用router.put
方法,通过查找用户的手机号码来查找用户的位置。但是方法User.find
不起作用,无法设置显示错误 null 属性。尽管该方法findbyid
有效。
Follwoing是我的代码。请建议我做错了什么。
router.put('/updatelocation/:mobileNo', (req, res) => {
User.find({mobileNo:req.params.mobileNo}, (err, user) => {
if (err) {
res.send(err);
}
res.json(user);
user.name = req.body.name;
user.save(function(err) {
if (err) {
res.send(err);
}
res.json({ message: 'Food Truck info updated' });
//res.send(user);
});
});
});
User.find
将返回一个数组,如果你想要一个对象,请使用User.findOne
例:
User.findOne({ mobileNo : req.params.mobileNo}, (err, user) => {
...
});
如果您使用的是猫鼬,想要更新用户.update
或.findOneAndUpdate