Как получить существующие модели из mongoDB с помощью mongoose - PullRequest
0 голосов
/ 11 февраля 2020

Привет, у меня есть существующий тест db по имени в mongoDB. В этой БД у меня есть 3 модели, и одна из них называется «аренда». Как получить все данные из этой модели, используя mon goose. Ниже приведен код, где я создаю соединение и получаю объект клиента

Я пробовал разные шаги, но ни один из них не работал, и я получаю ошибку - Схема не определена. Пожалуйста, помогите.

mongoose.connect(config.connection_string , {useNewUrlParser: true, useUnifiedTopology: true}).then((client)=>{

        /*client.model('rentals')*/
         /*client.collection("rentals").find({}).then(data=>{
            console.log(data)
         })*/
        }) 

1 Ответ

0 голосов
/ 11 февраля 2020

Пн goose - на основе схемы , Mongodb - нет.

Чтобы получить существующие данные с помощью mon goose, нужно определить модель данных внутри ваш код.

Пример, если ваши данные в базе данных выглядят следующим образом:

[{
  name: 'Foo',
}, {
  name: 'Bar',
  age: 55,
}, {
  carBrand: 'Toyota',
}]

1 / Вы можете прочитать все данные, используя схему большого mon goose:

{
  name: string,
  age: number,
  carBrand: string,
}

и вы получите

[{
  name: 'Foo',
  age: undefined,
  carBrand: undefined,
}, {
  name: 'Bar',
  age: 55,
  carBrand: undefined,
}, {
  name: undefined,
  age: undefined,
  carBrand: 'Toyota',
}]

2 / Вы можете прочитать целевые данные, создав конкретные c схемы

schemaA = {
  name: string,
}

schemaB = {
  name: string,
  age: number,
}

schemaC = {
  carBrand: string
}

Если вы не хотите создавать модели сами есть пакеты, генерирующие тезисы типа generate-schema

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