Node.js 如何在Mongoose';s Model.find()?

Node.js 如何在Mongoose';s Model.find()?,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我正在尝试渲染每个循环把手内的猫鼬模型。据我所知,应该在find查询内部调用res.render(),但这不起作用。页面从不加载,最终以ERR_EMPTY_响应结束 一般来说,我对Mongoose和Node.js都是新手,所以对于任何明显的疏忽,我深表歉意 这是发出请求的主文件 var express = require('express'); var mongoose = require('mongoose'); var router = express.Router(); var Prod

我正在尝试渲染每个循环把手内的猫鼬模型。据我所知,应该在find查询内部调用res.render(),但这不起作用。页面从不加载,最终以ERR_EMPTY_响应结束

一般来说,我对Mongoose和Node.js都是新手,所以对于任何明显的疏忽,我深表歉意

这是发出请求的主文件

var express = require('express');
var mongoose = require('mongoose');
var router = express.Router();

var Product = require('../models/product.js');

router.get('/shop', (req, res) => {
  Product.find((err, product) => {
    res.render('shop.hbs', {
      title: 'Shop',
      products: product
    });
  });
});
猫鼬模型

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var schema = new Schema({
  description: {type: String, required: true},
});

module.exports = mongoose.model('Product', schema);
播种机锉刀

var mongoose = require('mongoose');

var Product = require('../models/product');

var products = [
  new Product({
    description: 'Example 1',
  }),
  new Product({
    description: 'Example 2',
  })
];

mongoose.connect('mongodb://localhost:27017/products', {useNewUrlParser: true});

var done = 0;

for (var i = 0; i < products.length; i++) {
  products[i].save((err, result) => {
    done++;
    if (done === products.length) {
      exit();
    }
  });
}

var exit = () => {
  mongoose.disconnect();
};
var mongoose=require('mongoose');
var Product=require(“../models/Product”);
var乘积=[
新产品({
说明:“示例1”,
}),
新产品({
说明:“示例2”,
})
];
猫鼬mongodb://localhost:27017/products“,{useNewUrlParser:true});
var done=0;
对于(变量i=0;i{
完成++;
如果(完成===产品长度){
退出();
}
});
}
var exit=()=>{
mongoose.disconnect();
};
我希望模型渲染到的简化把手文件

<div id="shop">
  {{# each products}}
  {{/each}}
</div>

{{#每个产品}
{{/每个}}

我认为您没有为Product.find()使用正确的语法,第一个参数应该是搜索表达式。如果需要所有产品,则传递一个空对象:

  Product.find({}, (err, products) => {
        // Your rendering logic
  });