Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何从数据库中获取所有实例?_Node.js_Mongodb_Mongoose - Fatal编程技术网

Node.js 如何从数据库中获取所有实例?

Node.js 如何从数据库中获取所有实例?,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我被迫做一个“简单”的项目。老师想要mongoDb和NodeJS。我想从数据库中获取所有汽车,但find()不起作用。 我的代码模型: const mongoose = require('mongoose'); const CarSchema = mongoose.Schema({ mark:{ type: String, required: true,}, model:{ type: String, requir

我被迫做一个“简单”的项目。老师想要mongoDb和NodeJS。我想从数据库中获取所有汽车,但find()不起作用。 我的代码模型:

const mongoose = require('mongoose');

const CarSchema = mongoose.Schema({
    mark:{
        type: String,
        required: true,},
    model:{
        type: String,
        required: true,},
    price:{
        type: Number,
        required: true,},
    available: {
        type: Boolean,
        required: true,},
    pic_1:{
        type:String,
        required:true,
    },
    pic_2:{
        type:String,
        required:true,
    }


})

const Car = mongoose.model('Car', CarSchema)
module.exports = Car
路线:

router.get('/getAll', (req, res) =>{
    const cr=Car.find({});
    console.log(cr);
    res.render('main', {user: req.user, cars:cr} );

});
Console.log显示所有内容,但不显示车辆列表;)更严格地说:它显示了应用程序和控制器的结构。如何修复它?没有=>{}怎么做?它很难辨认,很长,我的眼睛在流血。我只想从db中获取所有汽车,将它们指定给var,然后用这些汽车渲染视图

有很多问题,但没有一个答案解决了我的问题! 致以最诚挚的问候,Car.find()是一个异步操作

解决方案1:使用异步/等待

解决方案2:使用回调函数

如果不想使用箭头功能,请按如下所示进行更改

() => {}    >    function() {}
对代码的更改

router.get('/getAll', async function(req, res) {
    const cr = await Car.find({});
    console.log(cr);
    res.render('main', {user: req.user, cars:cr} );
});
参考:

() => {}    >    function() {}
router.get('/getAll', async function(req, res) {
    const cr = await Car.find({});
    console.log(cr);
    res.render('main', {user: req.user, cars:cr} );
});