Helper方法使用阵列使用流星JS
GetSchoolId: function() {
var moduleIdArray=[];
var myslug = FlowRouter.getParam('myslug');
var mySchoolId = SchoolDb.findOne({slug: myslug});
if (mySchoolId) {
ModuleSchool.find({}, {schoolId: mySchoolId._id}).forEach(function (modulesSelected) {
moduleIdArray.push(modulesSelected.moduleId);
});
if (typeof moduleIdArray === 'object' && moduleIdArray instanceof Array) {
console.log(moduleIdArray);
moduleIdArray.forEach(function (moduleIds) {
return Modules.find({}, {_id: moduleIds}).fetch();
});
}
}
}
模板代码找到一个集合中的文件:
{{#each GetSchoolId }}
<p>{{GetSchoolId.modulename}} </p>
{{/each}}
</p>
{{/each}}
我知道流星PROFS,它是一个冰山英寸,在几秒钟内就将被破坏。我有3个收藏,一个用于学校纪录(SchoolDb
),第二个用于模块(模块),第三个是关系表(ModuleSchool
)。模块被分配给学校。
从上面的代码中,我能够使用传递给我用它来从关系表(SchoolDb
)的schoolId
路由的蛞蝓和(ModuleSchool
)返回模块得到(SchoolDb
)学校_id被分配到该学校。我能够获取模块ID并将它们转换为数组,我现在要做的是使用从ModuleSchool
获取的ID数组返回模块名称,因为只有_ids
存储在关系表中。
上面的代码只会将_ids转换为数组的级别,当我尝试在模板上打印时没有任何显示。我错了什么?
看['$ in'(https://docs.mongodb.com/manual/reference/operator/query/in/) –
尼尔伦恩,谢谢。请根据我的文章在实现中提供一个片段。 – kehinde