Accounts.createUser不保存配置文件

时间:2015-04-17 17:01:35

标签: meteor accounts createuser

我的server/fixtures.js文件中有以下代码:

var userId = Accounts.createUser({
  username: "tester",
  email: "a@b.com",
  password: "foobar",
  profile: { name: "Max" }
});
var user = Meteor.users.findOne({_id: userId});
console.log(user.profile.name);

现在,当我运行meteor时,它会记录undefined。我做错了什么?

3 个答案:

答案 0 :(得分:2)

我非常确定我已经在某个地方定义了Accounts.onCreateUser回调。我的坏!

答案 1 :(得分:-1)

我认为你需要使用Meteors Publications&订阅。检查一下link 了解更多信息。

示例:

if (Meteor.isServer){
  Meteor.publish('userdata', function() {   
    if(!this.userId) return null;
    return Meteor.users.find( this.userId );
  });
}

if (Meteor.isClient){
    Meteor.subscribe('userdata');
    console.log(Meteor.user());
}

答案 2 :(得分:-1)

因此,问题是server.log在服务器上不可用(根据Meteor目录约定运行此文件)。如果要登录服务器控制台,可以使用与console.log相同的Meteor._debug()。您可能还需要考虑将代码包装在Meteor.startup(function() {});块中,以便在服务器旋转时立即运行。