如何解决如何在猫鼬中更改枚举值
我的猫鼬集合中有一个枚举属性,其初始定义为box-shadow
,我需要更改它以向枚举添加附加动作const actions = ['a','b','c']
,但是当我尝试使用附加值时即const actions = ['a','c','d','e']
我收到验证错误action = 'e'
我的问题是我如何在已经在生产中的猫鼬的mongo集合中为枚举添加附加值。
"Model validation failed: action: 'e' is not a valid enum value for path 'action'."
解决方法
由于当前数据与以前的数据不一致,Mongoose会尝试使用新数据来验证当前数据(旧模式),即使您不进行任何修改并导致验证错误。就我而言,我强制Mongoose通过使用标志validateBeforeSave
保存新模式。
例如:
const savedProduct = await currentProduct.save({ validateBeforeSave: false });
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。