gpt4 book ai didi

javascript - 在 mongoose 中使用 uuid 作为 objectID

转载 作者:行者123 更新时间:2023-11-28 06:08:44 24 4
gpt4 key购买 nike

如何使用 UUID 生成的字符串,而不是原始的 mongoose ObjectID 字符串,同时保留 objectID 方法(ValueOf()、To String(), ....)?

当我生成 UUID 并尝试在我的 Mongoose 模式中使用

在我的模型中:

var uniqueUUID = uuid.v4();
createUser = user({
'myid': uniqueUUID,
});

在我的模型/架构中:

var userSchema = new mongoose.Schema({

_id: Schema.Types.ObjectId

});

出现验证错误。

ValidationError: user validation failed

最佳答案

您正在尝试添加架构中不存在的键。您的架构中没有定义 myid 键。默认情况下, Mongoose 不允许使用未预定义的键。

您可以将其更改为如下所示:

var userSchema = new mongoose.Schema({

_id: {type: String, default: uuid.v4}

});

自动使用生成的 uuid.v4 值分配对象 ID。

创建用户时使用:

var newUser = new user();

它已自动为文档分配 ID。请记住保存它。 :)

如果您想要另一个名为 myid 的 id 字段,您可以按照添加 _id 的方式将其添加到架构中。

关于javascript - 在 mongoose 中使用 uuid 作为 objectID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36605987/

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