0

我有两个 Collections CategoryFeeds

类别

{
   "_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",
    }
}

我尝试使用发布复合,这是我的代码。

服务器

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');

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

4

1 回答 1

0

publishComposite 不会修改集合数据,它会分别加载 Feeds 和 Category。如果您想获取提要项目的类别,只需从客户端数据库中选择它。

$scope.getFeedCategory = function (feedItem) {
    Category.findOne({'_id': feedItem.categoryId});
};
于 2016-03-01T17:19:22.683 回答