猫鼬错误:发布评论时发生CastError

时间:2020-05-21 13:39:18

标签: node.js mongodb express mongoose routes

我一直在尝试使用嵌套路由来向博客添加评论。但是,在提交新评论表单时,会出现以下错误

CastError:类型“”的对象强制转换失败 模型“营地”的路径“ _id”处为5ec68050984ae008d04685f3”

露营地模式如下

var campgroundSchema = new mongoose.Schema({
    name : String,
    image : String,
    description : String,
    comments : [
        {
            type : mongoose.Schema.Types.ObjectId,
            ref : "Comment"
        }       
    ]
})

这是注释架构

var commentSchema = new mongoose.Schema({
    text : String,
    author : String
})

这是app.js文件中的代码,用于向特定帖子添加新评论

app.post("/campgrounds/:id", function(req,res){
    Campground.findById(req.params.id, function(err, found){
        if(err){
            console.log(err);
        }
        else{
            Comment.create(req.body.comment, function(err, comment){
                if(err){
                    console.log(err)
                }
                else{
                    found.comments.push(comment);
                    found.save();
                    res.redirect("/campgrounds" + found._id)
                }
            })
        }
    })
})

哪里出了问题以及如何解决

0 个答案:

没有答案