目前我在获取数据时遇到问题。我想从数据库中获取数据并使用pug模板进行打印 这是我的index.js中的代码,我从集合中获取数据并放入数组。
//Printing a lesson
router.get('/getLesson', function(req,res, next){
var resultArray = [];
mongo.connect(url, function(err, db){
assert.equal(null,err);
var cursor = db.collection('lesson-data').find();
cursor.forEach(function(doc, err){
assert.equal(null, err);
resultArray.push(doc);
}, function(){
db.close();
res.render('lessons', {item: resultArray});
});
});
});
//Inserting a lesson
router.post('/lessonInsert', function(req,res,next){
var lesson = {
topic: req.body.topic,
description: req.body.description,
language: req.body.language,
level: req.body.level
};
mongo.connect(url,function(err, db){
assert.equal(null,err);
db.collection('lesson-data').insertOne(lesson, function(err, result){
assert.equal(null, err);
console.log('Lesson inserted');
db.close();
})
})
});
我试图打印我的阵列。
.container(action='/getLesson')
each item in resulArray
li #{item.topic}: #{item.description}: #{item.language}: #{item.level}
任何提示,帮助?
答案 0 :(得分:1)
执行以下操作时:
res.render('lessons', {item: resultArray})
您实际上是将名为resultArray
的变量item
传递给您的pug模板。所以迭代将是:
.container(action='/getLesson')
each element in item
li #{element.topic}: #{element.description}: #{element.language}: #{element.level}