未定义方法中的Meteor.user.find

时间:2014-03-17 02:42:24

标签: meteor

我试图从模板传入的ID中返回流星用户的profile.name。

我已经制作了一个调用流星方法的模板助手(正如我所知,除了登录的用户之外我需要在服务器上),并确认用户ID正在正确传递但是它会因为find查询(或findOne)返回undefined而崩溃。

该方法看起来像

hostUser: function(userID) {
    //var id = _.pick(attribs, 'userID');
    console.log(userID);
    var user = Meteor.users.find({_id: userID});
    console.log(user);
    return user.profile.name;
  }

位于/ lib目录中的Meteor.methods

console.log(userID)调用是正确的,但find(或findOne)返回null。

db.users.findOne({_ id:" sAhoXRtwqkDyMwK9"})重新启动正确的用户(如果从mongo控制台运行)。

1 个答案:

答案 0 :(得分:2)

lib目录仍可供客户端和服务器使用。

如果您希望该方法仅为服务器,请将其放在server目录中的某个位置,或者用块包围它,如:

if (Meteor.isServer) {
 // method definitions
}