【发布时间】:2016-09-12 15:15:15
【问题描述】:
我想为用户提供一个按钮,用于将一个集合中的文档 ID(连同他们的组名)添加到另一个集合中。
我有一个#each 循环,它通过模板帮助器查询从第一个集合中返回每个文档。在每个返回的文档中,我需要检查 id 是否已添加到另一个集合中,并且根据结果,html 中的 #if 帮助器返回不同的输出。
但是“this”返回的是一个空对象,我不知道如何将每个“this”数据上下文传递给“inCollectionTwo”助手:
<template name="Collections">
{{#each doc in colOne}}
{{#if inCollection2}}
{{> rmvfrmcolTwo doc=doc}}
{{else}}
{{> addtocolTwo doc=doc}}
{{/if}}
{{/each}
</template>
帮助者
Template.Collections.helpers({
colOne: function() {
return CollectionOne.find();
},
inCollectionTwo: function(){
var docid = this.colOne._id;
var group = Meteor.user().profile.groupName;
var exists = CollectionTwo.findOne({documentid: docid, groups: { "$in": [group]}});
if(exists) {
return true;
} else {
return false;
}
}
});
【问题讨论】:
标签: if-statement meteor this helper datacontext