Предположим, что у меня есть две коллекции Meteor: «Станции» и «Песни». Каждая песня имеет внешний ключ для станции, чтобы показать, что она была воспроизведена на этой станции.Ограничение сбора метеоров
Теперь я хочу, чтобы опубликовать последние 3 играли песни каждой станции, как так:
Meteor.publish("all-last-three-songs", function() {
var stations = Stations.find();
var stationIDs = stations.map(function(station) { return station._id });
var songs = Songs.find({station_id: {$in: stationIDs}}, {sort: {time: -1}, {limit: 3}});
return songs;
});
, который публикует только 3 песни для всех станций, конечно. Как я могу добиться того, что курсор для последних 3 песен для каждой станции будет возвращен? Я не хочу делать фильтрацию на стороне клиента.
Спасибо! :)
Спасибо! Две вещи здесь: поскольку в документации указано, что курсоры должны поступать из разных коллекций, что делает невозможным ее решение таким образом в моем случае. Возвращение массива не совсем «метеорный», не так ли? Я не думаю, что с этой реакцией могу справиться с этой прохладной реакцией на полный стек. – user1259201