我有群组和项目,这些项目与特定群组相关。在组的“详细信息页面”中,我希望查看属于特定组的所有项目。
我试过这个
Router.route('/group/:_id', {
name: 'group',
template: 'group',
waitOn: function () {
return this.subscribe("groups", this.params._id);
},
data: function () {
return {
group: Groups.findOne(this.params._id);
items: Items.find({groupId: this.params._id}),
}
}
});
但是,如果它应该等待特定组和属于该组的项目,那么应该等待什么呢?
答案 0 :(得分:2)
您可以返回要等待的订阅数组:
waitOn: function () {
return [
Meteor.subscribe("groups", this.params._id),
Meteor.subscribe("items", this.params._id)
]
}
答案 1 :(得分:0)
您可以拥有其他发布功能
Meteor.publish('relatedItems', function (groupId) {
return Items.find({groupId: groupId});
});
并等待两个订阅
waitOn: function () {
return [
Meteor.subscribe("groups", this.params._id),
Meteor.subscribe("relatedItems", this.params._id)
];
},
或者您可以像这样添加到现有出版物中:
Meteor.publish('groups', function (groupId) {
return [
Groups.find({_id: groupId}),
Items.find({groupId: groupId}),
];
});