MongoDB和Nest.js:定义集合的自定义名称

2022-03-07 00:00:00 mongodb collections javascript nestjs

我有一个类似以下的架构:

    @Schema()
    export class Pais extends Document {
      @Prop(
        raw({
          codigo: { type: String, index: true, unique: true },
        }),
      )
      @Prop()
      descripcion: string;
    }
    
    export const PaisSchema = SchemaFactory.createForClass(Pais);
    
    PaisSchema.plugin(uniqueValidator, { message: `{PATH} debe ser único` });

默认情况下,nest.js将"%s"添加到类名,因此集合的名称将为"paiss",但我希望名称为"paises"。

在模块上我尝试了以下操作:

    @Module({
      imports: [
        MongooseModule.forFeature([{ name: 'paises', schema: PaisSchema }]),
      ],

但是它没有起作用。我如何解决此问题?


解决方案

我找到了一个解决方案,只需像这样设置@Schema()修饰符

@Schema({ collection: 'paises' })

相关文章