Angenommen Ihre Question
Sammlung hat das folgende Schema (der Kürze halber vereinfacht):
QuestionSchema = new SimpleSchema({
title: {
type: String,
label: "Question"
},
category: {
type: String,
label: "Category"
}
});
und Ihre Answer
Sammlung hat
AnswerSchema = new SimpleSchema({
text: {
type: String,
label: "Question"
},
author: {
type: String,
label: "Author"
}
question: {
type: String,
label: "Question"
}
});
Sie können dies erreichen, indem Sie zwei Vorlagenhelfer erstellen, wobei der erste nur ein Array von Fragendokumenten zurückgibt und der zweite eine einzelne Fragen-ID als Parameter nimmt und einen Cursor aller Antworten mit dieser Fragen-ID zurückgibt:
Template.questions.helpers({
questions: function(){
return Question.find({}).fetch();
},
answers: function(questionId){
return Answer.find({question: questionId}).fetch();
}
});
Als nächstes benötigt die Vorlage verschachtelten {{#each}}
Blöcke, wobei der erste über das Fragen-Array iteriert und die Antworten jeweils als Parameter des nächsten Helfers an den nächsten weitergibt.
<template name="questions">
{{#each questions}}
<h1>{{this.title}}</h1>
<ol>
{{#each answers this._id}}
<li>{{text}}</li>
{{/each}}
</ol>
{{/each}}
</template>