node.js - 猫鼬中 ref 集合的默认值
问题描述
我有一个用户个人资料,我有一个“收入”字段,它在架构中看起来像这样
收入:{类型:Schema.Types.ObjectId,参考:'收入'}
这如何在创建新用户时为收入字段设置默认值?我不能这样做
earning: {
type: Schema.Types.ObjectId,
ref: 'Earning',
default: 0
}
我在路径“earning”处收到值“0”的 Cast to ObjectId failed 错误
解决方案
您在这里做错的是尝试在 ID 字段上输入数字。由于它是另一个对象 Id 字段的引用,因此您不能将其设置为 0。您需要做的是设置null
何时在db中创建用户并将其初始化为null值。喜欢:
earning: {
type: Schema.Types.ObjectId,
ref: 'Earning',
default: null
}