mongodb - 如何使用非主键_id的字段进行关联查询?

浏览:31日期:2023-06-12

问题描述

现在有个文章post的model使用cateId关联Category类目。但是cateId并非_id。导致获取时报错。请问只能通过_id去关联吗?如何使用Category下的非_id进行关联?

var PostSchema = new mongoose.Schema({ author: { type: mongoose.Schema.Types.ObjectId}, title: String, content: String, imgUrl: String, pv: { type:Number, default:0}, like: { type:Number, default:0}, keep: { type:Number, default:0}, comments: { type:Number, default:0}, cateId: { type:Number, ref:’Category’}, type: Number, create_date: { type: Date, default: Date.now }},{ versionKey: false })var Post = mongoose.model(’Post’, PostSchema)

问题解答

回答1:

1,Mongoose的populate只能在_id上;

2,所以,你这里关联只能自己写代码,先查询一个collection,然后再查询另外一个collection,自己关联了。

供参考。

Love MongoDB!Have fun!

2017MongoDB中文社区北京用户组大会在即,2017年6月3日 13:00-18:00

报名中!请戳左边!

相关文章: