2016-07-20 10 views
0

システム上のすべてのユーザーを取得するにはどうすればよいですか?セキュリティ上の理由から、特定のフィールドのみを取得します。私はそこにプライベートなフィールドがあるので、オブジェクト全体を返すことはしません。メテオールすべてのユーザーを取得する方法

公開方法があります: インポートが必要なのかどうか分かりませんか?私は必要 フィールドは、次のとおりです。 - ユーザ名 - 年齢 - レベル

Meteor.publish("allUsers", function(){ 
return Meteor.users.find({}); 
}); 

クライアント側の私が持っている:

allUsers(){ 
     Meteor.call('allUsers', function(error, result) { 
      return result; 
     }); 
    } 

とレンダリングで私が持っている:

 {this.allUsers().map((user) => { 
      return <UserSearchRow 
      key={user._id} 
      user={user} /> 
     })} 

答えて

1
Meteor.publish("allUsers", function() { 
    return Meteor.users.find({}, {fields: {username: 1, age: 1, level: 1}}); 
}); 

https://docs.meteor.com/api/collections.html#fieldspecifiers

+0

こんにちは私は詳細を入力するために私の質問を編集しました。クライアント側からこのフィールドのリストを取得しようとしています。 – John

+2

'Meteor.call'はパブリケーションではなくメソッドに使用するためのものです。代わりに 'Meteor.subscribe'を使う必要があります。 – aedm

関連する問題