2015-04-12 3 views
0

У меня есть коллекция вопросов, каждый вопрос с идентификатором:Meteor.js маршрутизации с массивом

[ 
    { 
    id: 0, 
    question: "What's up?" 
}, 

.....

У меня также есть набор вопросительных списков/массивы. Каждый элемент в списке/массиве является идентификатором вопросов.

У меня есть шаблон для ссылки на вопросы в списке:

<template name="questionListIDContent"> 
    {{#each question}} 
     <a href="{{pathFor 'myQuestion'}}" class="discuss btn btn-default btn-sm">Answer</a> 
    {{/each}} 
</template> 

Маршрут:

Router.route('/myquestion/:_id', { 
    name: 'myQuestion', 
    data: function() { 
    return Questions.findOne(this.params._id); 
    } 
}); 

Помощник является:

Template.questionListIDContent.helpers({ 
    question: function() { 
    var temp = QuestionsList.findOne({id: this.lessonID}); 
    var temp2 = temp.questionID // Array of question IDs 
    return Questions.findOne({id: { $in: temp2 }}); 
    } 
}); 

Я пытаюсь используйте findOne с массивом, содержащим список вопросов для получения требуемых вопросов для использования в шаблоне. Кто-нибудь видит, что я делаю неправильно здесь? Есть ли способ лучше.

ответ

0

Не используйте findOne, используйте find. FindOne возвращает один элемент, поэтому вы можете запускать их в каждом блоке. Найти возвращает курсор, с которым вы можете работать с каждым.

+0

Конечно. Я чувствую себя идиотом! Благодаря!! – user3393285

Смежные вопросы