Javascript Meteor.js根据集合对象和用户角色的值自定义发布

Javascript Meteor.js根据集合对象和用户角色的值自定义发布,javascript,meteor,Javascript,Meteor,我仍在努力掌握Meteor中定制出版的概念 有一个名为Pages的集合。此集合包含“隐私”字段。此字段可以包含值“private”和“public”。还有用户角色。根据privacy字段的值,我想检查当前用户是否允许查看此页面,然后发布,或者不允许此特定集合对象 因此,服务器上的发布方法是这样的(完全即兴): 这段代码中的问题显然是“this”不会引用集合中的一个特定对象。但我想访问已发布集合的单个对象以执行此用户角色检查 非常感谢您的任何提示。您需要返回一个经过筛选的光标 Meteor.pub

我仍在努力掌握Meteor中定制出版的概念

有一个名为Pages的集合。此集合包含“隐私”字段。此字段可以包含值“private”和“public”。还有用户角色。根据privacy字段的值,我想检查当前用户是否允许查看此页面,然后发布,或者不允许此特定集合对象

因此,服务器上的发布方法是这样的(完全即兴):

这段代码中的问题显然是“this”不会引用集合中的一个特定对象。但我想访问已发布集合的单个对象以执行此用户角色检查


非常感谢您的任何提示。

您需要返回一个经过筛选的光标

Meteor.publish('pages', function () {
  return Pages.find({privacy:"public"});
}

请参阅第章。

您需要返回一个经过筛选的光标

Meteor.publish('pages', function () {
  return Pages.find({privacy:"public"});
}

请参阅第章。

嘿,感谢您的快速回复!我刚刚意识到,我需要在这上面再添加一个检查-对于用户角色。为此,我需要在发布之前访问集合中的对象。所有这些都可以使用mongo查询完成,如:
Parties.find({$or:[{“public”:true},{invested:this.userId},{owner:this.userId}]})Parties.find({$or:[{“public”:true},{invested:this.userId},{owner:this.userId}]})