是否可以在猫鼬模式中定义一个自动生成的,不可重写的字段?我的用例是,我需要在架构中定义一个uuid
字段,该字段需要自动生成。但不允许使用save
,update
或任何其他update
变体进行设置。
我想出了以下方法,但是似乎很棘手。我翻阅了文档,但找不到正确的方法来完成此操作。
我的解决方案(为简化起见)
const Schema = mongoose.Schema({
uuid: {
type: String,
set: uuid, // If uuid is provided overwrite it using uuid()
default: uuid // If uuid is not provided, set the default value using uuid()
},
// redacted
});
有没有适当的方法来实现这一目标?