架构和模型都可以,而且Mongoose .populate不能正常工作

时间:2017-08-29 01:15:38

标签: node.js mongodb mongoose-populate

我在终端上检查了我的数据库,数据还可以,但填充'commnets'时仍然给我ID

这是我显示数据的途径

var camp_id= req.params.id ;
Campground.findById(camp_id).populate("commnets").exec(function(err,fcg){
    if(err) { console.log(err) ;}
    else {
        console.log("No err") ;
        console.log(fcg) ;
        res.render("show",{campground: fcg});}


}) ;

moongose schemas(露营地和评论)

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

var Campground = mongoose.model("Campground",campgroundSchema);

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

var Comment = mongoose.model("Commnet",commentSchema) ;

1 个答案:

答案 0 :(得分:0)

我认为这是因为拼写错误。你需要使用"评论"而不是" commnets"

var camp_id= req.params.id ;

Campground.findById(camp_id).populate("comments").exec(function(err,fcg){
    if(err) { console.log(err) ;}
    else {
        console.log("No err") ;
        console.log(fcg) ;
        res.render("show",{campground: fcg});}


}) ;