使用meteror autoform记录用户名

时间:2015-05-09 13:06:53

标签: meteor meteor-autoform

我正在使用cfs:autoform创建一个表单来捕获客户端上提交的照片和标题,如下所示:

Photos = new Mongo.Collection("photos");
Photos.attachSchema(new SimpleSchema({
  userId:{
    type: String,
    autoValue:function(){return this.userId},

  },
  userName:{
      type: String,
      autoValue:function(){return Meteor.users.find({_id: this.userId}).username},
  },

  groupMembers: {
    type: String
  },
  comments: {
    type: String  
  },
  fileId: {
    type: String
  }
}));

我已经获得了成功捕获和填写userId的代码,以及评论和上传的照片,但我似乎无法获取它来捕获用户名。

1 个答案:

答案 0 :(得分:2)

这很可能是因为您使用的是find而不是findOne。由于find返回游标而不是单个文档,因此您无法访问username值,因为它不是游标的属性。如果您将其更改为findOne,则应该有效。

userName:{
      type: String,
      autoValue:function(){return Meteor.users.findOne({_id: this.userId}).username},
  }