Mongoose Schema

NestJS 🟡 Mid

Definition

Definition de la structure d'un document MongoDB via @Schema et @Prop de @nestjs/mongoose. Genere le schema Mongoose a partir des decorateurs TypeScript.

Analogie

Comme un formulaire avec des champs obligatoires et optionnels : il definit ce qu'un document doit contenir.

Exemple de code

@Schema({ timestamps: true })
export class Cat {
  @Prop({ required: true })
  name: string;

  @Prop()
  age: number;

  @Prop({ type: Types.ObjectId, ref: 'Owner' })
  owner: Owner;
}

Cas d'usage

Definir la structure des documents MongoDB avec validation et typage TypeScript.

Anti-pattern

Stocker des documents sans schema defini, rendant les donnees incoherentes.
#database