[英]I get this error: this.$__.validationError = new ValidationError(this)
我是使用 node.js 和 express.js 學習 Web 開發的新手。 當我在 Postman 中測試我的代碼時,服務器崩潰並給我這個錯誤this.$__.validationError = new ValidationError(this) 。 我正在創建連接到 MongoDB 和 mongoose 包的后端服務器。
const express = require('express') const router = express.Router() const { create } = require('./../controllers/courseControllers') const {verifyAdmin, verify} = require('./../auth') router.post('/create', verifyAdmin, async (req, res) => { // console.log(req.body) try{ create(req.body).then(result => res.send(result)) }catch(err){ res.status(500).json(err) } })
const Course = require('../models/Course'); //CREATE A COURSE module.exports.create = async (reqBody) => { const {courseName, description, price} = reqBody let newCourse = new Course({ courseName: courseName, description: description, price: price }) // console.log(newCourse) return await newCourse.save().then((result, err) => result ? result : err) }
const mongoose = require('mongoose');
const courseSchema = new mongoose.Schema({
courseName: {
type: String,
required: [true, `Course name is required`],
unique: true
},
description: {
type: String,
required: [true, `Course description is required`]
},
price: {
type: Number,
required: [true, `Price is required`]
},
isOffered: {
type: Boolean,
default: true
},
enrollees: [
{
userId: {
type: String,
required: [true, `userId is required`]
},
enrolledOn: {
type: Date,
default: new Date()
}
}
]
}, {timestamps: true})
module.exports = mongoose.model("Course", courseSchema);
鑒於您提供的信息,我可以說您在控制器中缺少創建時的登記者參數,因為登記者已設置為必需,如果不讓我知道,我希望它對您有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.