0

У меня есть две коллекции Категория и Каналы.Присоединиться к запросам в метеоритах с использованием опубликованного композита

Категория

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

    ] 
} 
}); 

В клиенте Угловая я попытался это:

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

И я запутался с видом на части также.

ответ

0

publishComposite не изменяют данные сбора, он будет загружать каналы и категории отдельно. Если вы хотите получить категорию элемента фида, просто выберите его из db клиента.

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

 Смежные вопросы

  • Нет связанных вопросов^_^