如何填充子“引用”文档猫鼬数组
How to populate an array of sub `ref`ed documents mongoose?
我正在开发一个带有 Mongoose 版本 4.4.0
的 MEAN 堆栈应用程序,并且在填充子文档数组时遇到问题。(在SO的其他地方找不到解决方案。
下面说明了模型的结构:
签证模式
var visaSchema = new mongoose.Schema({
from: {type: Schema.Types.ObjectId, ref: 'Country'},
to: {type: Schema.Types.ObjectId, ref: 'Country'},
requirements: [
{type: Schema.Types.ObjectId, ref: 'Requirement'}
]
});
exports.model = mongoose.model('Visa', visaSchema);
需求模型
var requirementSchema = new mongoose.Schema({
visa: {type: Schema.Types.ObjectId, ref: "Visa"},
title: String,
body: String
});
exports.model = mongoose.model('Requirement', requirementSchema);
以上基本构建了Visa
和Requirement
之间的一对多关系。
问题
我无法填充requirements
字段,该字段实际上是Requirement
ref
对象的数组。
这就是我试图实现它的方式:
Visa.find()
//.populate('from', null, {shortName: from})
//.populate('to', null, {shortName: to})
.populate('requirements')
.exec(function(err, result){
res.json(result);
});
每当我尝试填充 requirements
字段时,它都会在 requirements
键上返回一个空数组。
但是,如果没有人口,它将返回ObjectIds
数组:
[
{
"_id":"56b329878848eba00c0f5535",
"from"{
"_id":"56b2db1b57f9e71c1bfbadb9",
"name":"Germany",
"shortName":"DE",
"__v":0
},
"to":{
"_id":"56b2db0f57f9e71c1bfbadb8",
"name":"Afghanistan",
"shortName":"AFG",
"__v":0
},
"__v":3,
"requirements": [
"56b331d764585e8c12c14dd1",
"56b336431ffc49bc19bf1c96",
"56b33675443f033c14e26d03"
]
}
]
我做错了什么?
任何帮助都将不胜感激。
你可以试试:
Visa.find()
.populate([
{ path: "from" },
{ path: "to" },
{ path: "requirements" },
])
.exec(function(err, result){
res.json(result);
});
相关文章:
- '文档'在子窗口中意外地引用了父窗口
- 如何在MongoDB中检索子文档引用
- 在不引用文档的情况下使用AngularJS获取元素
- 是否可以引用猫鼬(MongoDB)上的子文档
- 使用 Mongoose 在所有现有集合中查找引用的文档
- 如何设置javascript中引用的文档的URL
- 未捕获的引用错误:未在Javascript(Chrome控制台)中定义文档
- 如何引用我网站上的文档以独立于网站位置和使用位置
- 如何使用 ExtendScript 从 InDesign 文档的所有脚注引用中删除斜体和粗体样式
- 不确定文档引用器是否正常工作
- 使用_id引用数组对多个相应文档进行高效查询
- 未捕获的引用错误:未定义文档
- 如何填充子“引用”文档猫鼬数组
- mongoDB:在具有父引用的模型树结构中查找缺失的文档
- Javascript - 如何使用哈希获取文档引用
- 当我们尝试使用直接引用调用文档对象方法时,例如:var kk = document.getElementById;kk(
- holder.js未在html文档中引用或加载
- 将嵌套文档集合转换为具有父引用的模型树结构
- 如何在另一个集合中插入具有字段引用文档的文档
- 如何引用文档.在React组件中工作