首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用typegoose从嵌套对象自动创建新文档

使用typegoose从嵌套对象自动创建新文档
EN

Stack Overflow用户
提问于 2020-06-27 05:40:50
回答 1查看 675关注 0票数 0

我想知道的是,当我在Typegoose类中保存一个带有许多标记为Ref的嵌套对象的新文档时,是否有一种方法可以从正确集合中的这些嵌套对象自动创建新文档。

目前,这段代码给了我一个错误:

nestedProp: CastError: Cast to ObjectId failed for value "{ Prop1: 'test1', Prop2: 'test2' }" at path "nestedProp"

代码语言:javascript
复制
import { getModelForClass, prop, Ref } from "@typegoose/typegoose";
import mongoose from "mongoose";

export class NestedClass {
  @prop()
  Prop1!: string;
  @prop()
  Prop2?: string;
}

export class MainClass {
  @prop()
  name!: string;
  @prop({ ref: "NestedClass" })
  nestedProp?: Ref<NestedClass>;
}

let exampleObject = {
  name: "test",
  nestedProp: {
    Prop1: "test1",
    Prop2: "test2",
  },
};

async function test() {
  await mongoose.connect("mongodb://localhost:27017/database");
  const ClassModel = getModelForClass(MainClass);
  try {
    const u = await ClassModel.create(exampleObject);
  } catch (e) {
    console.log(e);
  }
}
test();

我知道mongoose要求对象随ObjectId一起提供,而不是对象。

然而,问题是我有许多大的类和许多嵌套的类,我试图避免循环遍历所有的大对象,以便在保存大对象之前先保存嵌套的对象。

谢谢你的回答。

EN

回答 1

Stack Overflow用户

发布于 2020-06-27 23:20:31

目前这是不可能的,但是Automattic/mongoose有一个关于它的问题

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62603180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档