创build嵌套在mongoose中的子对象的父对象
我想创build1个对象嵌套的文档,如:
儿童:
chil1:
{ name: 'Mimi', parent: 537258f63eb92b3201b65e56, _id: 537258f63eb92b3201b65e57, __v: 0 },
chil2
{ name: 'Kiki', parent: 537258f63eb92b3201b65e56, _id: 537258f63eb92b3201b65e58, __v: 0 }
家长:(我想要什么)
[ { name: 'John', _id: 537258f63eb92b3201b65e56, __v: 0, children: [ { name: 'Mimi', parent: 537258f63eb92b3201b65e56, _id: 537258f63eb92b3201b65e57, __v: 0 }, Children:[ { name: 'Mimi', parent: 537258f63eb92b3201b65e56, _id: 537258f63eb92b3201b65e57, __v: 0 }, { name: 'Kiki', parent: 537258f63eb92b3201b65e56, _id: 537258f63eb92b3201b65e58, __v: 0 } ]
有可能创buildmongooese与nodejs(快递)的数据? 这是类似这个问题mongoose:如何插入一个单一的子文档 – 不是一个数组,但在这种情况下,孩子只存储孩子的ID,而不是所有的对象? 这是我的模型文件:
const schema:mongoose.Schema = new mongoose.Schema({ owner: { type: mongoose.Schema.Types.ObjectId, ref: 'user' }, name: String, parentCategory: { type: mongoose.Schema.Types.ObjectId, ref: 'parent', }, childCategories: [{ type: mongoose.Schema.Types.ObjectId, ref: 'child', }], });
通常结果:
{ name: 'John', _id: 537258f63eb92b3201b65e56, __v: 0, children: [Chil1_id, Chil2_id] }
你尝试填充 ?
这是一个简单的例子:
Parent.find().populate("children").exec(...)
只要你指定孩子参考模型,mongoose就足够聪明,可以把孩子和父母一起join。