Я застрял в публикации Метеора Композит. Я не понимаю, как правильно определить дочерние коллекции, определенные в publishComposite.
Предположим, у меня есть такие интерфейсы
interface IInterview {
_id: string,
candidateId: string,
comments: IInterviewComments[]
}
interface IInterviewComment {
userId: string,
text: string
}
interface IUser {
_id: string,
name: string
}
Итак, с данными некоторых интервью мне также нужны имена авторов комментариев
Я написал что-то вроде этого
publishComposite('interviews.item', function(interviewId) {
return {
find() {
return InterviewCollection.find({_id: interviewId});
},
children: [
find(interview) {
const authorsIds = interview.comments.map((comment) => comment.userId);
return UsersCollection.find({_id: {$in: authorsIds}});
}
]
}
});
Итак, как мне узнать имя автора комментария на клиенте? Могу ли я просто выполнить UsersCollection.findOne({_id: commentUserId})
или мне нужно использовать какой-нибудь помощник по сбору?