Mongoose文档说我们可以设置像mongoose.set('returnOriginal', false)这样的全局选项。
现在我在nestjs中使用@nestjs/mongoose,但是我找不到一个文档来描述如何进行这个全局选项设置。
我确实找到了一种通过InjectConnection更改设置的方法
import { Module } from '@nestjs/common';
import { MongooseModule, InjectConnection } from '@nestjs/mongoose';
import { Connection } from 'mongoose';
...
@Module({
imports: [
MongooseModule.forRootAsync({
inject: [ConfigService],
useFactory: (configService: ConfigService) => ({
uri: configService.get('DB_URI'),
useNewUrlParser: true,
useUnifiedTopology: true,
useFindAndModify: false,
}),
}),
...
],
})
export class AppModule {
constructor(@InjectConnection() private readonly connection: Connection) {
connection.base.set('returnOriginal', false);
}
}这段代码对我来说很好用。但是,在@types/mongoose中,Connection类型中没有base.set属性。我必须省略注入connection的类型定义。
我的问题是,这是否是设置mongoose全局期权的标准方法?如果没有,我该怎么做呢?
发布于 2020-09-15 10:31:08
因为安装了mongoose包,所以我可以直接设置该选项。
...
import * as mongoose from 'mongoose';
...
mongoose.set('returnOriginal', false);
@Model({...})
export class AppModule {...}https://stackoverflow.com/questions/63887812
复制相似问题