gpt4 book ai didi

javascript - 如何同时保存两个相互关联的模型?

转载 作者:可可西里 更新时间:2023-11-01 10:08:51 24 4
gpt4 key购买 nike

我有一个 Controller ,它应该对 2 个模型执行操作,其中第二个数据库模型必须包含第一个模型 _id 作为其中的引用。

示例:

const model1 = await new firstModel(somedata).save();

const model2 = new secondModel({
test: true //dummy
referId: //this must contain the value of _id of model1
});

await model2.save()

我不想使用 pre('save', ..) 钩子(Hook)。有什么办法可以执行这个操作吗?

最佳答案

将您自己的 ObjectID _id 字段预先分配给第一个模型的 somedata,并将其分配给第二个模型。

const ObjectId = require('mongodb').ObjectId;
const somedata = {
_id: new ObjectId(),
present: true //dummy
}
const model1 = await new firstModel(somedata).save();

const model2 = new secondModel({
test: true //dummy
referId: somedata._id
});

await model2.save()

_id 键是可选的 - 如果未传递则自动生成,如果传递给模型构造函数则接受。

关于javascript - 如何同时保存两个相互关联的模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54092886/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com