作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 typegoose 创建一个模式,我在其中定义属性的 default 字段。这意味着如果我没有在 setQuery 中为该字段设置值,它应该在插入时使用架构中的默认值。
这不适用于 updateOne
方法,我将选项设置为 {upsert: true, setDefaultsOnInsert: true}
而如果我使用 create
,则默认设置正确。
Mongoose :5.7.14MongoDB:3.2.20 Node :8 typescript :3.8.3打字鹅:5.9.1
最佳答案
它不起作用的原因是因为我明确提到字段值是 undefined
。
例如。
const updatePayload = {
id: "123",
dob: someObject.dateOfBirth
}
someObject.dateOfBirth
结果未定义。如果我在更新有效负载中没有 dob
键,默认值会起作用。
关于node.js - setDefaultsOnInsert 不适用于 upsert,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61443054/
我正在使用 typegoose 创建一个模式,我在其中定义属性的 default 字段。这意味着如果我没有在 setQuery 中为该字段设置值,它应该在插入时使用架构中的默认值。 这不适用于 upd
使用 findOneAndUpdate 并将 upsert 和 setDefaultsOnInsert 设置为 true 时,尝试在数据库中插入新用户时遇到问题。我想做的是设置以下架构的默认值: va
我是一名优秀的程序员,十分优秀!