gpt4 book ai didi

javascript - 如何在嵌套字段中保存Mongo文档自己的_id?

转载 作者:行者123 更新时间:2023-12-02 14:27:52 26 4
gpt4 key购买 nike

此 Meteor 服务器代码尝试将新创建的属性 _id 复制到子文档中,但未能成功。

如何做到这一点?

编辑:
该代码使用 matb33:collection-hooks

MyCollection.after.insert(function(userId, doc) {
if (doc.element === 'myString') {
doc.values[0]._id = doc._id;
}
});

最佳答案

改变 matb33:collection-hooksafter Hook 中的 doc 不会导致运行其他查询。如果您愿意,您将需要显式更新文档。

但是,在这种特殊情况下,如果您确实需要文档中重复的 _id,您可以生成一个 _id 并在插入文档时指定它。

您可能可以使用 MyCollection._makeNewID() 方法,因为这个 API 已经好几年没有改变了,并且它是 Mongo 包内部使用的。

const _id = MyCollection._makeNewID();
const doc = {
_id,
values: [
{
_id,
...
}, {
...
}
]
};

MyCollection.insert(doc);

关于javascript - 如何在嵌套字段中保存Mongo文档自己的_id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38067896/

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