【发布时间】:2021-04-18 07:56:37
【问题描述】:
我正在尝试通过 Id 使用 mongoose 和 express 获取单个用户的信息。我现在拥有的函数给了我一个 200 状态代码,但是 JSON 对象没有出现在 Postman 中我错过了什么?
我从我的文件中发布了我正在使用的控制器和模型。
控制器
const express = require("express");
const classworkRouter = express.Router();
const User = require("../../models/User");
classworkRouter.get("/:userId", (req, res) => {
// const Id = req.params.userId;
User.findById(req.params.userId).then((err, user)=>{
if(err) {
res.status(500);
console.log("errr 500")
} else {
res.json({"user" : user})
}
})
})
module.exports = classworkRouter;
型号
const mongoose = require("mongoose");
const Schema = mongoose.Schema;
const ClassworkSchema = new Schema({
name: String,
time: Date,
todo: String,
isDone: false
});
const OutcomesSchema = new Schema({
name: String,
time: Date,
todo: String,
isDone: false,
isApproved: false
})
const MeetupSchema = new Schema({
name: String,
time: Date,
location: String,
attended: false
})
const UserSchema = new Schema({
name: {
type: String,
required: true
},
email: {
type: String,
required: true
},
password: {
type: String,
required: true
},
date: {
type: Date,
default: Date.now
},
classwork: [ClassworkSchema],
outcomes: [OutcomesSchema],
meetups: [MeetupSchema],
});
module.exports = User = mongoose.model('users', UserSchema);
【问题讨论】:
-
如果找不到用户,则只需在响应中获取一个空对象
-
你检查 req.params.userId 值了吗?
标签: node.js json express mongoose postman