我不确定有什么问题,但是请遵循以下有关如何从服务器获取其他字段的文档:
return Meteor.users.find({_id: this.userId}, {fields: {'other': 1, 'things': 1}});
最终发生的事情是,它只发布两个字段other and things
,而不是默认字段emails, profile, username
和other, things
。
这是我返回Meteor.users.find({username: username}, {fields: {'status': 1});
所以最终发生的事情是客户端只收到两个字段_id, and status
。我不想手动将所有“默认”字段添加到每个发布函数中,我做错了什么?
答案 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})
);
请注意,您不能混合包含和排除。