我在猫鼬中创建了两个集合,如下所示 1.分类架构 const categorySchema = new Schema({
name:{
type:String,
required:true
},
cat_type:{
type:String,
enum:['images','quotes','videos']
},
image:{
type:String
},
videoId:{
type:Number
}
})
const Category = mongoose.model('categories',categorySchema);
module.exports = Category;
2。视频架构
const videoSchema = new Schema({
videoId:{
type:String
},
title:{
type:String,
required:true
},
cat_id:{
type:Schema.Types.ObjectId,
ref:'categories'
},
description:{
type:String
},
url:{
type:String
},
publishedAt:{
type:String
}
})
const Video = mongoose.model('videos',videoSchema);
module.exports = Video
我正在使用下面的查询来获取视频和视频的类别详细信息
Video.find({}).
populate('categories')
.exec(function(err, data){
console.log(data);
})
但是我仅获得视频表的结果,而不是类别表,这是我做错了吗?
答案 0 :(得分:0)
您要填充字段 cat_id ,而不是类别。您输入的字段应该是引用其他模式的字段,在这种情况下,该字段将为cat_id