如何在Mongoose NestJS模式中使用动态键的嵌套对象?



我有模式

// this is collection schema
@Schema()
export class User {
@Prop()
age: number;
@Prop()
role: string;
@Prop(/* ???????? */)
info: Record<string, Info>;
}

//this is schema of nested object
@Schema()
export class Info {
@Prop()
name: string;
@Prop()
surname: string;
}

我想保持这样的数据格式:

{
age: 20,
role: 'user',
info: {
en: {
name: 'John'
surname: 'Smith'
},
fr: {
name: 'Johny'
surname: 'La`Smith'
},
}
}

so:en,fr等…是语言名称(该字段为dynamic),可以有很多语言)

如何在模式上实现这个??(什么应该在Prop()信息字段??)

谢谢!

可能

@Prop({ type: Map, of: SchemaTypes.Mixed })
info: Record<string, Info>;

https://mongoosejs.com/docs/schematypes.html地图我做得不一样

export interface IMeta {
[index: string]: string | number | boolean | object | undefined;
}
@Prop({ type: Map })
meta: IMeta;

[index: string]: stringits索引签名对可能数据的通用描述。

相关内容

  • 没有找到相关文章

最新更新