2016-07-13 121 views
0

我有這樣一個集合:流星:反應與嵌套蒙戈出版物查詢

//Groups Collection 
{ 
    _id:1, 
    members: [ 
    { 
     memberId: 'A1B2', 
     content: [1,2,3] 
    }, 
    { 
     memberId: 'C10B', 
     content: [4,5,6] 
    } 
    ] 
}, 
{ 
    _id:2, 
    members: [ 
    { 
     memberId: 'A1B2', 
     content: [7,8,9] 
    }, 
    { 
     memberId: 'F804', 
     content: [10,11,12] 
    } 
    ] 
} 

和另一個集合像這樣的:

//Users Collection 
{ 
    _id: 'A1B2', 
    name: 'Newton' 
}, 
{ 
    _id: 'C10B', 
    name: 'Gauss' 
}, 
{ 
    _id: 'F804', 
    name: 'Leibniz' 
} 

而且我需要的所有ID發佈在組陣列用戶_id = 1我tryed:

Meteor.publish('themembers',idGroup,function() { 
    return Users.find({_id:{$in:Groups.findOne(idGroup).members.map(function(e) {return e.memberId})}}); 
}); 

然後我訂閱:

Template.problem.onCreated(function() { 
    Meteor.subscribe('themembers',1); 
}); 

現在我可以訪問成員的助手:

Template.problem.helpers({ 
    members: function() { 
     return Users.find(); 
    } 
}); 

和助手作品的權利了。

但現在,如果我向該組添加新成員,它不會出現在列表中,...我的訂閱似乎沒有反應。

我在做什麼錯了?

+0

的可能的複製[Meteor.publish:發佈收集依賴於其他集合(http://stackoverflow.com /問題/ 26398952 /流星發佈,發佈信息收集它,依賴上,其他收集) – MasterAM

回答