Estoy tratando de acceder a la colección de productos en mi método de búsqueda. Agregué un método .virtual para acceder a él, pero actualmente recibo el siguiente mensaje de error:
MissingSchemaError: el esquema no se ha registrado para el modelo "ProductDocument".
Hasta ahora mi implementación:
export type PriceDocument = Price & Document; @Schema({ timestamps: true }) export class Price { @Prop({ ref: 'ProductDocument', required: true, }) uid: string; @Prop() standardPrice: number; @Prop({ required: true }) startDate: Date; @Prop() endDate: Date; } export const PriceSchema = SchemaFactory.createForClass<Price>(Price) .index({ uid: 1, startDate: 1, endDate: 1, }, { unique: true }); PriceSchema.virtual('products', { ref: 'ProductDocument', localField: 'uid', foreignField: 'uid', }); ProductPriceSchema.set('toObject', { virtuals: true }); ProductPriceSchema.set('toJSON', { virtuals: true });Así es como trato de acceder a él en mi método de búsqueda
const productPriceDocument = await this.productPrice.find({ $and: queries, // dynamic queries }).populate('products').exec();