如何将数据库中的项目列表分配给NodeJS中的渲染对象?

时间:2013-06-26 23:34:12

标签: node.js mongoose

我想使用代码呈现页面:

exports.new = function(req, res){
  res.render('products/new', {
    title: 'New Product',
    product: new Product({}),
    categories: Category.list()
  })
}

类别是Mongoose模式。如果我尝试获取所有类别的列表,它将异步工作。

如何使用Mongoose从Mongo数据库中获取所有类别的列表?

1 个答案:

答案 0 :(得分:0)

如您所知,Node中的数据库查询始终是异步的;所以,你需要等待查询完成,然后在回调中渲染你的模板! 最后,它将是这样的:

Category.list(function( err, categories ) {
  res.render("products/new", {
    title: "New Product",
    product: new Product({}),
    categories: categories
  });
});