使用 mongo 创建新条目时出现验证错误
Validation error when creating a new entry with mongo
我正在尝试使用 Postman 向我的 mongo 数据库中插入一个条目,但是我看到的是以下内容:
{"content":{"message":"Validation failed","name":"ValidationError","errors":{"name":{"message":"Path `name` is required.","name":"ValidatorError","path":"name","type":"required"}}}}
这是我的 API 的相关控制器:
var mongoose = require('mongoose');
var Course = mongoose.model('Course');
var sendJSONResponse = function(res, status, content){
res.status(status);
res.json({content});
}
module.exports.makeCourse = function(req, res){
Course.create({
name: req.body.courseName
},function(err, course){
if(err){
sendJSONResponse(res, 400, err);
} else{
sendJSONResponse(res, 201, course);
}
})
};
module.exports.listCourses = function(req, res){
Course.find({}, function(err, course){
sendJSONResponse(res, 200, course);
})
};
module.exports.courseIDLookup = function(req, res){};
module.exports.deleteCourse = function(req, res){};
还有数据模型:
var mongoose = require('mongoose')
var subject = require('./subject.js');
var courseSchema = new mongoose.Schema({
name : {type: String,
unique: true,
required: true},
subjects : [subject.schema]
});
module.exports = mongoose.model('Course', courseSchema);
创建此条目时我犯了什么错误?
如果 name
是您的密钥,
name: req.body.courseName
应该是
name: req.body.name
我正在尝试使用 Postman 向我的 mongo 数据库中插入一个条目,但是我看到的是以下内容:
{"content":{"message":"Validation failed","name":"ValidationError","errors":{"name":{"message":"Path `name` is required.","name":"ValidatorError","path":"name","type":"required"}}}}
这是我的 API 的相关控制器:
var mongoose = require('mongoose');
var Course = mongoose.model('Course');
var sendJSONResponse = function(res, status, content){
res.status(status);
res.json({content});
}
module.exports.makeCourse = function(req, res){
Course.create({
name: req.body.courseName
},function(err, course){
if(err){
sendJSONResponse(res, 400, err);
} else{
sendJSONResponse(res, 201, course);
}
})
};
module.exports.listCourses = function(req, res){
Course.find({}, function(err, course){
sendJSONResponse(res, 200, course);
})
};
module.exports.courseIDLookup = function(req, res){};
module.exports.deleteCourse = function(req, res){};
还有数据模型:
var mongoose = require('mongoose')
var subject = require('./subject.js');
var courseSchema = new mongoose.Schema({
name : {type: String,
unique: true,
required: true},
subjects : [subject.schema]
});
module.exports = mongoose.model('Course', courseSchema);
创建此条目时我犯了什么错误?
如果 name
是您的密钥,
name: req.body.courseName
应该是
name: req.body.name