javascript - mongoose联合查询populate怎么用的?
问题描述
// 创建一个人物数据结构let personSchema = mongoose.Schema({_id:Number,name:String,post:[{ type:Number, ref:’postModel’}]});console.log(mongoose.Schema.ObjectId);// 根据结构生成人物模型let personModel = mongoose.model(’person’,personSchema);let ObjectId = mongoose.Types.ObjectId;// 创建一个文章数据结构let postSchema = mongoose.Schema({_id:Number,title:String,author:{ type:Number, ref:’personModel’},content:String});// 创建文章模型let postModel = mongoose.model(’post’,postSchema);开始查询
postModel.find({}) .populate(’people’) .exec((err,data)=>{console.log(data) });

这是什么原因呢?换过用ObjectId查询,也是一样的结果,mongoose版本4.10.6,node版本8.1.0
问题解答
回答1:post:[{ type:Schema.ObjectId, ref:’postModel’}]
另外要注意ref的字段要和你注册的model的名称一致, 否则populate操作不会成功参考这个https://github.com/YueminHu/l...建议去学习下MDN的图书馆例子
相关文章:
1. react-native 启动Android项目失败2. python - 用ffmpeg采集视频,用terminate没法结束进程3. node.js - vue-resource,如何改变响应格式?4. node.js - nodejs+express+vue5. nginx - 关于vue项目部署到ngnix后出现的问题6. 网站在移动的环境下手机,pc打不开7. css - 关于HTML中width和height的疑问(这个提问的标题不好起)8. phpadmin的数据库,可以设置自动变化时间的变量吗?就是不需要接收时间数据,自动变化9. javascript - tab切换点击不同的按钮显示不同的内容10. html - css导航栏模糊,导航栏固定,随着页面滑动对下方页面产生模糊效果,如何实现?

网公网安备