Скомпилируйте две разные записи mongodb

Я только начинаю с javascript / express / mongodb. В качестве небольшого стартового проекта я хочу сделать простой диспетчер задач. Задачи должны быть разделены на приосы. Таким образом, каждая запись имеет свой флаг "высокий", "средний" или "низкий".

Тем не менее, я не могу показать разные записи на странице индекса.

Сообщение об ошибке: "tasks_low не определен"

Это соответствующий фрагмент js:

app.get('/', function(req, res){
    db.tasks.find({prio: 'high'}, function (err, highs) {
        res.render('index', {
            title: 'Aufgaben High:',
            tasks: highs
        });
    })

});

app.get('/', function(req, res){
        db.tasks.find({prio: 'low'}, function (err, lows) {
        res.render('index', {
            title: 'Aufgaben Low:',
            tasks_low: lows
        });
    })

});

Это мой файл index.ejs:

<h1>Prio High</h1>
<ul>
    <% tasks.forEach(function(tasks){ %>
    <li><%= tasks.task %> <%= tasks.prio %> - <a class="deleteUser" data-id="<%= tasks._id %>" href="#">x</a></li>
<% }) %>
</ul>
<br><br>

<h1>Prio Low</h1>
<ul>
    <% tasks_low.forEach(function(tasks_low){ %>
    <li><%= tasks_low.task %> <%= tasks_low.prio %> - <a class="deleteUser" data-id="<%= tasks_low._id %>" href="#">x</a></li>
<% }) %>
</ul>

Однако, когда я компилирую разные взгляды, все работает хорошо!

app.get('/tasks_high/', function(req, res){
    db.tasks.find({prio: 'high'}, function (err, highs) {
        res.render('index', {
            title: 'Aufgaben High:',
            tasks: highs
        });
    })

});

app.get('/tasks_low/', function(req, res){
        db.tasks.find({prio: 'low'}, function (err, lows) {
        res.render('index', {
            title: 'Aufgaben Low:',
            tasks_low: lows
        });
    })

});

1 ответ

Просто создайте запись коллекции с заголовком + задача:

// Task collection structure
var Task= mongoose.model('Tasks', {
    title: String,
    priority: String,
});

А затем отфильтруйте каждую задачу по приоритету, как вы делаете, но с использованием той же коллекции

Другие вопросы по тегам