我在mongo db中创建了两个collection bear and bears。我已经在快速代码中定义了Bear集合,但是它正在访问Bears数据。我现在很困惑。 (熊和熊具有相同的字段(名字和名字),但值不同。

这是我的代码

app.js

router.get('/api/bears', (req, res) => {
   console.log("dfgdg",req.body)
    Bear.getBears((err, bear) => {
        if(err){
            throw err;
        }
        console.log("fdggfd",bear);
        res.json(bear);
    });
});


型号/bear.js

const mongoose = require('mongoose');


const bearSchema = mongoose.Schema({
    first_name:{
        type: String,
        required: true
    },
    last_name:{
        type: String,
        required: true
    },
    create_date:{
        type: Date,
        default: Date.now
    }
});

const Bear = module.exports = mongoose.model('Bear', bearSchema);


module.exports.getBears = (callback, limit) => {
    Bear.find(callback).limit(limit);
}


谁能知道为什么提取熊数据而不是熊吗?

最佳答案

我已经尝试过您的代码,并且遇到了相同的问题,我通过在mongoose.model中添加第三个参数(指定集合的​​名称)来解决该问题

const Bear = module.exports = mongoose.model('Bear', bearSchema, 'bear');


祝好运

关于javascript - 如何在Express JS中使用get方法从mongo db获取数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52443890/

10-10 16:21