Supondo que sua
Question
coleção tem o seguinte esquema (simplificado para abreviar):QuestionSchema = new SimpleSchema({
title: {
type: String,
label: "Question"
},
category: {
type: String,
label: "Category"
}
});
e sua
Answer
coleção tem AnswerSchema = new SimpleSchema({
text: {
type: String,
label: "Question"
},
author: {
type: String,
label: "Author"
}
question: {
type: String,
label: "Question"
}
});
Você pode fazer isso criando dois ajudantes de modelo, onde o primeiro apenas retorna uma matriz de documentos de pergunta e o segundo recebe um único id de pergunta como parâmetro e retorna um cursor de todas as respostas com esse id de pergunta:
Template.questions.helpers({
questions: function(){
return Question.find({}).fetch();
},
answers: function(questionId){
return Answer.find({question: questionId}).fetch();
}
});
Em seguida, o modelo precisa de
{{#each}}
aninhado blocos com o primeiro iterando sobre o array de perguntas e passando as respostas para o próximo cada como o parâmetro do próximo auxiliar. <template name="questions">
{{#each questions}}
<h1>{{this.title}}</h1>
<ol>
{{#each answers this._id}}
<li>{{text}}</li>
{{/each}}
</ol>
{{/each}}
</template>