Как получить данные из Монго БД, используя метод get в Express JS? - PullRequest
0 голосов
/ 21 сентября 2018

Я создал две коллекции медведей и медведей в Монго ДБ.Я определила коллекцию медведей в экспресс-коде, но она обращается к данным медведей.Я очень смущен сейчас.(медведи и медведи имеют одно и то же поле (имя и фамилия), но значения разные.

вот мой код

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);
    });
});

модели / медведь.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);
}

Кто-нибудь может знать, почему данные медведей выбираются вместо медведя ??

Ответы [ 2 ]

0 голосов
/ 21 сентября 2018

Я попробовал ваш код, и у меня возникла та же проблема, я исправил его, добавив третий параметр в mongoose.model, указывающий имя коллекции

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

Удачи

0 голосов
/ 21 сентября 2018

Вы можете использовать третий аргумент в mongoose.model для имени коллекции, например

//following will fetch the from bear collection
const Bear = module.exports = mongoose.model('Bear', bearSchema, 'bear');


//following will fetch the from bears collection
const Bear = module.exports = mongoose.model('Bear', bearSchema, 'bears');

Из документа

Когда аргумент коллекции не переданMongoose использует название модели.Если вам не нравится это поведение, передайте имя коллекции, используйте mongoose.pluralize () или задайте параметр имени коллекции схем.

Ссылка https://mongoosejs.com/docs/api.html#mongoose_Mongoose-model

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...