假设我有一个Meteor.user()
对象,如下所示:
{_id: "xxxxxxxx", username: "john"}
我有一个名为profiles
的不同集合,如下所示:
{_id: "yyyyyyy", username: "john", firstname: "John", lastname: "Doe", etc...}
显然,我可以从username
设置profiles
的{{1}}属性。
但是,当我尝试在客户端上匹配此信息时:
Meteor.user().username
并在我的jade模板中使用此代码:
import Profile form '../imports/api/profiles'
Template.AddInfo.helpers({
interests(){
return Profile.find({username: Meteor.user().username});
}
});
什么都没有出现。
注意:我也尝试过each interests
p #{username}
同样的结果。
我在这里做错了什么?这是在客户端处理findOne({...})
的方式的问题吗?
提前致谢。
答案 0 :(得分:0)
您似乎没有订阅发布Profile
数据的出版物。假设您没有使用autopublish
,那么您必须在服务器上定义发布功能。
Meteor.publish("profiles", function () {
return Profile.find({});
});
然后在onCreated
回调中从您的模板订阅此内容。
Template.AddInfo.onCreated(function() {
this.subscribe('profiles');
});