Я был после некоторого совета, чтобы наилучшим образом настроить контексты данных для базы данных MongoDB с помощью Iron Router.Настройка контекстов данных в Meteor и Iron Router
Чтобы объяснить, что я работаю на достаточно базового проекта обзоров фильмов, и развернуты Modulus на http://reviews-48062.onmodulus.net/
Это возвращает список обзоров, но хотелось бы использовать маршруты для создания других страниц. Я установил Iron Router локально и имею локальную коллекцию MongoDB (называемую задачами) с некоторыми данными в ней.
Переписал код, содержащий информацию о маршрутизации. Это успешно работает при отображении маршрутов, но, похоже, не приводит никаких данных в оператор {{each}}.
Мой JS код выглядит следующим образом:
// define Mongodb collection
Tasks = new Mongo.Collection("tasks");
// set up home route and database query
Router.route('/', function() {
this.render('Home', {
tasks: function() { return Tasks.find({}, {sort: {title: 1}, limit: 10}); }
});
});
// define routes
Router.route('/one');
Router.route('/two');
Router.route('/three');
HTML-код:
<head>
<title>Iron router sandbox</title>
</head>
<body>
</body>
<template name="Home">
{{> Nav}}
<h1>Home</h1>
<p>This is a test</p>
{{#each tasks}}
<li>
<strong>{{title}}</strong>
<p>Directed by {{director}}</p>
<p>{{review}}</p>
<p>Available on: {{format}}</p>
</li>
{{/each}}
</template>
<template name="One">
{{> Nav}}
<h1>Page One</h1>
<p>Some more text.</p>
</template>
<template name="Two">
{{> Nav}}
<h1>Page Two</h1>
<p>A bit more text.</p>
</template>
<template name="Three">
{{> Nav}}
<h1>Page Three</h1>
<p>Even more text.</p>
</template>
<template name="Nav">
<ul>
<li>
<a href="/">Home</a>
</li>
<li>
<a href="/one">Page One</a>
</li>
<li>
<a href="/two">Page Two</a>
</li>
<li>
<a href="/three">Page Three</a>
</li>
</ul>
</template>
Я понимаю, что контекст данных устанавливается на «Home» шаблона, так что не уверен что не так с кодом.
Любой совет, который очень ценится.
В http://reviews-48062.onmodulus.net/ он работает. Это что-то отличное от вашего кода? –