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

Работа над проектом с Nestjs 6.x, Mongoose, Mongo и т.д ... Что касается Back End, в моем случае использования я должен изменить соединение с одной из моих баз данных в зависимости от некоторых условий / параметров , поступающих от некоторых запросов .

В основном, у меня есть это

mongoose.createConnection('mongodb://127.0.0.1/whatever-a', { useNewUrlParser: true })

и я хочу изменить на , например

mongoose.createConnection('mongodb://127.0.0.1/whatever-b', { useNewUrlParser: true })

Поэтому у меня в Нестисе первый провайдер

export const databaseProviders = [
  {
    provide: 'DbConnectionToken',
    useFactory: async (): Promise<typeof mongoose> =>
    await mongoose.createConnection('mongodb://127.0.0.1/whatever', { useNewUrlParser: true })
  }

Некоторое время я проводил исследования и обнаружил, что в выпуске Nestjs 6.x есть поставщик запросов , позволяющий мне динамически изменять По запросу инъекция некоторых поставщиков.

Во всяком случае, я не знаю, как добиться своего изменения, если оно будет работать в случае, если я достигну этого

Может ли кто-нибудь помочь или направить меня? Большое спасибо заранее.

...