2015-09-01 59 views
0

main.html中:流星不輸出MongoDB的查詢

{{#each getRequests}} 
    <li><a href="/req/{{_id}}">{{_id}}</a></li> 
{{/each}} 

main.js

if (Meteor.isClient) { 
    Meteor.subscribe('getRequests',{fbID : Meteor.user().services.facebook.id}); 
} 

publications.js

Meteor.publish('getRequests', function(args) { 
    return data.find({"potentialUsers.user_id" : args.fbID}); 
}); 

我堅持努力要得到 main.html顯示數據庫中的ID。用戶的ID可以位於data.potentialUsers.user_id中的「data」表中的多個文檔中。我不明白的是,當我將查詢放入meteor mongo(在命令行中)時,它會成功執行。

回答

1

我對流星本身相當陌生,但通過文檔閱讀我看到了這些問題。

訂閱使文檔可以從客戶端獲得。你仍然需要編寫一個函數將它們傳遞給html。

main.js

if (Meteor.isClient) { 
    Meteor.subscribe('getRequests',{fbID : Meteor.user().services.facebook.id}); 

    Template.body.helpers({ 
     getRequests: function(){ 
      return data.find() // since you want everything the publication has. 
     } 
    }) 

} 
在HTML

然後:

{{#each getRequests}} 
    <li><a href="/req/{{_id}}">{{_id}}</a></li> 
{{/each}} 
+0

這就是它!沒有意識到你必須重新定義這個功能。感謝你及時的答覆! – ahota

+0

將所有用戶信息轉發給瀏覽器是不好的做法。 Facebook令牌等......可以用來模仿某人。 – MrE