Я новичок ie в пн goose и express. Пытался найти ответ на мой вопрос, но не повезло. У меня есть следующие схемы:
var Schema = mongoose.Schema;
var Project= new Schema ({
name: {
type: String,
required: true,
min: 5,
max: 255
},
description: {
type: String,
min: 5,
max: 500
},
status: {
type: String,
min: 5,
max: 255
},
priority: {
type: String,
min: 5,
max: 255
},
progress: {
type: String,
min: 5,
max: 255
} ,
_user: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User'
}
});
module.exports= mongoose.model('Project', Project);
var Schema = mongoose.Schema;
var IssueSchema= new Schema ({
description: {
type: String,
min: 5,
max: 500,
required: true
},
status: {
type: String,
min: 5,
max: 255,
default: "Open"
},
priority: {
type: String,
min: 5,
max: 255
},
deadline:{
type: Date
},
_project: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Project'
}
});
module.exports= mongoose.model('Issue', IssueSchema);
Я работаю над созданием промежуточного ПО Issue для route / projectId / Issues и имею код
const bodyParser = require('body-parser');
const Issue = require ('../models/Issue');
var Project = require ('../models/Project');
const { handleError,ErrorHandler } = require('../helpers/error');
exports.createIssue = (req, res,next) => {
Project.findById(req.params.id);
if (req.params.id!= null) {
console.log('Project found');
const {description, deadline, priority, status} = req.body;
var issue = new Issue({
description,
deadline,
status,
priority,
_project:req.params.id
});
issue.save();
res.status(200).send("Issue created!")}
else {
err = new Error('Project ' + req.params.id + ' not found');
err.status = 404;
return next(err);
}
};
И это не работает :( То, чего я пытаюсь добиться, это проверить, существует ли projecID, перед сохранением документа «Issue». Есть идеи, как это реализовать?