1
我用下面的代码删除MongoDB中的条目仍的NodeJS路由到删除的条目在MongoDB中
router.delete('/:id', function(req, res) {
Student.findByIdAndRemove(req.params.id, function(err, student) {
if(err) {
console.log(err);
return res.redirect('/students/' + req.params.id);
}
console.log('Deleted student.');
console.log(student);
res.redirect('/students');
});
});
的删除经历,我再也看不到它在数据库中;然而,如果我访问旧页面/学生/:ID它会经历而不是重定向回来,我收到一个错误,因为我试图在空对象上使用方法。
router.get('/:id', function(req, res) {
Student.findById(req.params.id, function(err, foundStudent) {
if(err) {
console.log(err);
return res.redirect('/students');
}
res.render('pages/students/show', { student : foundStudent });
});
});
我怎样才能知道该ID不再存在?
哇愚蠢的错误..只是好奇,但为什么它,如果我进入一个以前的ID进入/学生/:ID它经历,但如果我只是尝试一些随机喜欢asdfashd它不? – jbauer
asdfashd无效monodb ID。 MongoDB的ID是时间戳和其他元素的组合。也许mongodb在传递之前验证一个id。 – owaishanif786