在POST请求中,我正在将一个新文档保存到mongo数据库中。保存数据库后,是否可以将res.redirect重定向到该确切的文档ID?我不确定如何执行此操作。我找不到任何教程,文档或stackoverflow问题,这些问题似乎完全可以满足我的需求。
我可以做这样的事情吗? :id是我刚才保存在mongoose / mongo中的文档的ID在哪里?
newItem.save()。then(res.redirect('/ results /:id');
我希望用户提交帖子请求。我通过猫鼬将信息保存到mongo文档中。然后保存后,我想使用该页面上已保存项目的ID重定向到新URL。
答案 0 :(得分:1)
当然可以。
save()
方法可以接受回调,因此您可以获取已保存文档的_id
字段。
一种方法是:
newItem.save((err, itemSaved) => {
if(err) {
next(err);
}
const itemId = itemSaved._id;
res.redirect('/results/' + itemId);
});
希望这能解决您的问题。
PS
无需在重定向的路径上使用冒号。请注意,因为使用它会给您Cast Error
。