【发布时间】:2019-07-14 23:57:21
【问题描述】:
我正在尝试使用 MEAN 堆栈实现 CRUD 操作。我在通过 ID 获取用户时遇到问题。它显示状态为真,但它返回一个空文档。
这是我的模型:
const userSchema = new mongoose.Schema({
fullName: {
type: String,
required: 'Full name can\'t be empty '
},
userName: {
type: String,
required: 'user name can\'t be empty ',
unique: true
},
email: {
type: String,
required: 'email can\'t be empty ',
unique: true
});
mongoose.model('User', userSchema);
在我的控制器中:
const mongoose = require('mongoose');
const passport = require('passport');
var ObjectId = require('mongoose').Types.ObjectId;
const User = mongoose.model('User');
module.exports.getuser = (req, res, next) => {
if(!ObjectId.isValid(req.params.id))
return res.status(400).send(`No record with given id : ${req.params.id}`);
User.findById(req.params.id, (err, user) => {
if(!err){ res.status(200).json({status: true, user}); }
else{ console.log('Error in retriving User :' + JSON.stringify(err, undefined, 2)); }
});
}
这是路线:
router.get('/:id', jwtHelper.verifyJwtToken, ctrlUser.getuser);
在检查邮递员时,我得到了 status: true 但它返回一个空白文档。 我不知道发生了什么事,请帮助。 提前致谢!!
【问题讨论】:
标签: node.js mongodb mongoose mongoose-schema