使用 publish composite 在 meteor angular 中加入查询

Join queries in meteor angular using publish composite

我有两个 Collections 类别Feed.

类别

{
   "_id": "ADFGFDF",
   "title" : "title",
}

供稿

{
   "_id": "DFSAHT",
   "feeds" : "ds sdsd sds",
   "categoryId" : "catId"
}

我需要得到这样的结果:

{
   "_id": "ADFGFDF",
   "title" : "title",
   "categoryId" : "DFSAHT"
   "category" : {
     "_id": "DFSAHT",
     "feeds" : "ds sdsd sds",
    }
}

我尝试使用 publish-composite,这是我的代码。

服务器

Meteor.publishComposite('feedscateg', function () {

return {
  find: function () {
    return Category.find({});
  },
  children: [
    {
      find: function (cat) {
        return Feeds.find({ categoryID: cat._id });
      }
    }

  ]
}
});

在客户端 Angular 我试过这个:

$scope.feeds = $meteor.collection(Category).subscribe('feedscateg');

我也对视图部分感到困惑。

publishComposite 不修改集合数据,它将单独加载 Feeds 和 Category。如果您想从客户端数据库 select 获取 Feed 项目的类别。

$scope.getFeedCategory = function (feedItem) {
    Category.findOne({'_id': feedItem.categoryId});
};