在流星中,我如何获取所有记录而无需登录,仅在登录时才有效。我只想显示以下记录:流星查找()无需登录
Collection.find().fetch()
并显示所有记录,如仪表板,但没有登录。任何想法?。
在流星中,我如何获取所有记录而无需登录,仅在登录时才有效。我只想显示以下记录:流星查找()无需登录
Collection.find().fetch()
并显示所有记录,如仪表板,但没有登录。任何想法?。
在Meteor中,如果删除了诸如publish
之类的开发包,则默认情况下不会发布收集数据。
要发布的东西,你必须在服务器上的代码:
Meteor.publish('publication', function() {
return Collection.find({ });
});
然后您订阅您Collection
使用Meteor.subscribe('publication')
和行为的专利文献。
如果发布中的数据仅提供给已登录的用户,则可以随时创建一个新的发布,如上面的发布返回所有内容。然后您需要订阅该出版物,而不是您正在使用的当前出版物。
在客户端上,您需要使用var subscription = Meteor.subscribe("publication");
来订阅出版物。您可以使用Collection.find({})
在订阅准备就绪后访问该集合的数据。
我试过你的例子,但不行,我创建了一个发布函数,然后把这个函数放到suscribe中,但是当我从“isClient”调用Collection.find()时,什么也没有发生。 – pokaxperia
您是否订阅该刊物? – Ivan
是的,但仍然不起作用 – pokaxperia
结构发布colllections 不用登入:
Meteor.publish('publication', function() {
return Collection.find({ });
});
如果想客户端必须登录使用:
Meteor.publish('publication', function() {
if(this.userId){
return Collection.find({ });
}
});
感谢
什么是您发布功能样子该集合? –