我正在使用以下文档
{
"_id" : 123344223,
"firstName" : "gopal",
"gopal" : [
{
"uuid" : "123",
"name" : "sugun",
"kiran" : [
{
"uuid" : "456",
"name" : "ghb"
}
]
}
]
}
我想从数组kiran的第一个文档中检索名称并将其打印在表格中......
这是我试过的
Template.table.helpers({
ProductManager: function () {
return ProductManager.find({_id:123344223},{gopal:{$elemMatch:{uuid:"123"}}});
}
})
其中ProductManager是我的集合,在common.js中定义
ProductManager = new Meteor.Collection("ProductManager");
这是我的模板
<template name="table">
<table>
<thead>
<tr>
<th>NAME</th>
<th>UUID</th>
</tr>
</thead>
<tbody>
{{#each ProductManager.gopal.kiran}}
<tr>
<td>{{name}}</td>
<td>{{uuid}}</td>
</tr>
{{/each}}
</tbody>
</table>
当我尝试这个时
ProductManager.find({_id:123344223},{gopal:{$elemMatch:{uuid:"123"}}});
我可以在mongo shell中获得这个
{
"_id" : 123344223,
"firstName" : "gopal",
"gopal" : [
{
"uuid" : "123",
"name" : "sugun",
"kiran" : [
{
"uuid" : "456",
"name" : "ghb"
}
]
}
]
}
但不能打印表中Kiran数组的名称和uuid ....... plzz帮助我解决这个问题...提前致谢
答案 0 :(得分:0)
Discovermeteor有一个很好的指南 Discovermeteor
子文档搜索的另一个stackoverflow帖子 How to write Mongo query to find sub document with condition