Mongoose使用多个本地/外键对填充虚拟对象
我刚刚发现了Mongoose的populateVirtuals方法,这将为我当前的项目节省大量资金。不过,我希望能进一步扩展它。是否有一种简单的方法可以基于多个本地/外键对进行填充?下面是一个代码的示例(注意:这可能不是一个很好的示例,但希望它能传达我问题的基础)Mongoose使用多个本地/外键对填充虚拟对象,mongoose,populate,Mongoose,Populate,我刚刚发现了Mongoose的populateVirtuals方法,这将为我当前的项目节省大量资金。不过,我希望能进一步扩展它。是否有一种简单的方法可以基于多个本地/外键对进行填充?下面是一个代码的示例(注意:这可能不是一个很好的示例,但希望它能传达我问题的基础) 虽然这可能不是你想要的答案。你可以这样做 workerSchema.virtual('department1',{ ref: "Department", localField: "locationCode", for
虽然这可能不是你想要的答案。你可以这样做
workerSchema.virtual('department1',{
ref: "Department",
localField: "locationCode",
foreignField: "locationCode"
})
workerSchema.virtual('department2',{
ref: "Department",
localField: "departmentCode",
foreignField: "code"
})
在find查询中,可以使用
Worker.find({}).populate('department1').populate('department2')
在处理数据时,您可以检查数据字段是否为空,并将两个输出合并为一个
Worker.find({}).populate('department1').populate('department2')