Meteor.users为文档无法正常工作添加其他字段

时间:2014-09-07 19:25:28

标签: mongodb meteor

我不确定有什么问题,但是请遵循以下有关如何从服务器获取其他字段的文档:

return Meteor.users.find({_id: this.userId}, {fields: {'other': 1, 'things': 1}});

最终发生的事情是,它只发布两个字段other and things,而不是默认字段emails, profile, usernameother, things

这是我返回Meteor.users.find({username: username}, {fields: {'status': 1});

的内容

所以最终发生的事情是客户端只收到两个字段_id, and status。我不想手动将所有“默认”字段添加到每个发布函数中,我做错了什么?

1 个答案:

答案 0 :(得分:0)

如果要应用DRY原则,只需创建defaultInclusionFields:

var defaultInclusionFields = function() {
  return {
    emails:1,
    profile:1,
    username:1
  };
}

并使用下划线扩展defaultInclusionFields()与自定义字段('其他',' status',...):

Meteor.users.find(
  {username: username},
  {fields: _.extend(defaultInclusionFields(),{"other":1,"status":1})
);

请注意,您不能混合包含和排除。