我有两个系列:
在Bookmarks集合中,post_id是来自书签帖子的_id。
我使用以下模板助手显示特定用户的所有帖子:
Template.profile.helpers({
posts: function () {
// get current router parameter id (iron router)
context = Router.current().params._id;
return Posts.find({user_id: context}, {sort: {timestamp: -1} } );
}
});
现在,我想显示用户在模板中添加书签的所有帖子:userBookmarks。是否可以使用模板助手实现此目的? 或者仅使用包或Mongo.Collection转换选项?
答案 0 :(得分:2)
HTML:
<template name="userBookmarks">
{{#each myBookmarks}}
{{#with post}}
{{text}}
{{/with}}
{{/each}}
</template>
JS:
Template.userBookmarks.helpers({
myBookmarks: function(){
return Bookmarks.find({user_id: Meteor.userId()});
},
post: function(){
return Posts.findOne({_id: this.post_id});
}
});
答案 1 :(得分:0)
如果您需要一个助手版本:
Template.userBookmarks.helpers({
'posts': function () {
return Posts.find({
_id: {
$in: Bookmarks.find({user_id: Meteor.userId()}).map(function (bookmark) {
return bookmark.post_id;
})
}
});
}
});