【发布时间】:2019-04-12 10:04:28
【问题描述】:
我正在使用 express/jade/mongodb 创建一个带有数据库的站点(在这方面很新)。 我在使用此函数的 get 方法期间使用“mongoose find”从数据库中检索列表:
function getBookList(Book, req, callback){
Book.find({'username': req.user.username}, 'bookTitle author', function(err, userBooks) {
if (err) return handleError(err);
else if (userBooks.length > 0) {
bookList.push(userBooks);
callback();
}
});
};
router.get('/', ensureAuthenticated, function(req, res, next) {
getBookList(Book, req, function(){
res.locals.user.books = bookList[0];
res.render('index', { title: 'library' });
});
});
在我的jade文件中,代码是:
ul
each book in user.books
li #{book.bookTitle}
span -
span #{book.author}
第一次使用用户登录时,我按预期获得了列表,但如果我将文档添加到数据库并再次呈现页面,我页面上的列表不会更新并保持原样。 即使在注销和再次登录后,它也保持不变。只有在重新启动服务器后,列表才会更新。 谁能向我解释我做错了什么?
【问题讨论】:
标签: node.js mongodb express mongoose pug