如何使用猫鼬加入不同的模式?
Posted
技术标签:
【中文标题】如何使用猫鼬加入不同的模式?【英文标题】:How to join to different schema using mongoose? 【发布时间】:2021-09-11 14:14:18 【问题描述】:我有 2 个名为“classSchema”和“sectionSchema”的架构,如下所示:
let classSchema = new mongoose.Schema(
className:
type: String,
required: true,
,
capacity:
type: Number
);
和
let sectionSchema = new mongoose.Schema(
sectionName:
type: String,
required: true,
,
strength:
type: Number,
required: true,
,
ofClass:
type: Mongoose.Schema.type.ObjectId,
);
我想在使用 classSchema 时创建一个学生班级和该班级的一部分。例如:我想使用 classSchema 创建一个类“X”,然后使用 sectionSchema 向其添加部分,如“X-A”、“X-B”、“X-C”等。我想在创建部分时为该部分提供类创建的参考。我怎样才能实现这个功能?
【问题讨论】:
【参考方案1】:看起来不像sectionSchema中的“ofClass”,你想要classSchema中引用的sectionSchema的ObjectId,并将它们存储在一个数组中。类似的,
let classSchema = new mongoose.Schema(
className:
type: String,
required: true,
,
capacity:
type: Number
,
sections:[mongoose.Schema.Types.ObjectId]
);
然后你可以使用猫鼬populate、find或aggregation加入
【讨论】:
以上是关于如何使用猫鼬加入不同的模式?的主要内容,如果未能解决你的问题,请参考以下文章