Как подключить / запросить Mongoose к существующей базе данных - PullRequest
0 голосов
/ 05 января 2019

Я пытаюсь подключить сервер Node / Express к существующей базе данных / коллекции MongoDB. Я уже успешно подключился к базе данных. Однако мне очень сложно настроить модели / схемы для запроса.

MongoDB является MongoDB Atlas и имеет одну коллекцию с более чем 800 000 документов. Название одной коллекции - delitosCollection.

Я пробовал следующее безуспешно:

var CrimeData = mongoose.model('DelitosCollection', new Schema({}),'delitosCollection');


mongoose.connection.on('open', function(ref){
    console.log("connected to the mongo server");

   CrimeData.find({}, (err,results) => {
       if(err){
           console.log("ERROR")
           throw err
       }
       console.log("results: ", results.length)
   } )
});

Я знаю, что соединение работает, так как я получаю console.log без ошибок. Однако result.length возвращает 0, когда оно должно быть более 800 000. Потратил слишком много часов на это.

1 Ответ

0 голосов
/ 07 января 2019

подключение к монго дБ

// Connect to mongoDB
mongoose.connect('mongodb://localhost/[yourDbName]',{useNewUrlParser:true})
    .then(function(){
        console.log('mongoDB connected');
    })
    .catch(function(){
        console.log('Error :');
    }) 

после этого вам нужно будет создать свою схему, и тогда только вы можете запросить базу данных

создайте свою схему следующим образом

// Crimes Schema 
const CrimeDetailsSchema= new Schema({
    first_name: {
        type: String,
        required: true
    },
    last_name: {
        type: String,
        required: true
    },
    email: {
        type: String,
        required: true
    }

});

const Profile = module.exports = mongoose.model('delitosCollection', CrimeDetailsSchema, 'delitosCollection');

после этого создайте ваши запросы

Вы можете получить представление об этом в документации mongoose здесь

...