MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Върната стойност на Meteor като низ

Да предположим, че вашият Question колекцията има следната схема (опростена за краткост):

QuestionSchema = new SimpleSchema({
    title: {
        type: String,
        label: "Question"
    },
    category: {
        type: String,
        label: "Category"
    }
});

и вашия Answer колекцията има

AnswerSchema = new SimpleSchema({
    text: {
        type: String,
        label: "Question"
    },
    author: {
        type: String,
        label: "Author"
    }
    question: {
        type: String,
        label: "Question"
    }
});

Можете да направите това, като създадете два помощника за шаблони, където първият просто връща масив от документи с въпроси, а вторият приема един идентификатор на въпрос като параметър и връща курсор на всички отговори с този идентификатор на въпрос:

Template.questions.helpers({
    questions: function(){        
        return Question.find({}).fetch();
    },
    answers: function(questionId){
        return Answer.find({question: questionId}).fetch();
    }
});

След това шаблонът се нуждае от вложен {{#each}} блокове, като първият итерира масива с въпроси и предава отговорите на всеки следващ като параметър на следващия помощник.

<template name="questions">
    {{#each questions}}
        <h1>{{this.title}}</h1>
        <ol>
        {{#each answers this._id}}
            <li>{{text}}</li>
        {{/each}}
        </ol>
    {{/each}}
</template>


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Първичната реплика на MongoDb става вторична, ако вторичната се повреди

  2. В Mongo каква е разликата между $near и $nearSphere?

  3. Как да запиша файл в MongoDB?

  4. Как да използвам Javascript обект в конвейера за агрегиране на mongodb?

  5. (Как) може aggregate() да разбие индекс?