Mongoose 中的 Schema 字段默认值的设置方法

Mongoose 中的 Schema 字段默认值的设置方法

Mongoose 是 Node.js 环境下 MongoDB 的对象模型工具,它提供了一种方便的方式来定义 MongoDB 中的文档结构和操作方式。在 Mongoose 中,Schema 是定义文档结构的基础,它是一个 JavaScript 对象,描述了文档中的字段和类型。在实际开发中,我们经常需要设置字段的默认值,本文将介绍 Mongoose 中的 Schema 字段默认值的设置方法。

在 Mongoose 中,我们可以通过在 Schema 定义中设置 default 属性来设置字段的默认值。默认值可以是一个静态值,也可以是一个函数,函数返回值将作为默认值。下面是一个示例代码:

在上面的示例代码中,我们定义了一个名为 userSchema 的 Schema,包含了两个字段 name 和 age。其中,name 字段的默认值为 'John Doe',age 字段的默认值为一个随机数值。在创建新的 User 实例时,如果没有传入对应字段的值,则会使用默认值。

需要注意的是,Mongoose 中的默认值只会在执行 insert 操作时生效,如果是 update 操作,需要手动设置默认值。例如,下面的示例代码中,在执行 update 操作时,需要手动设置 name 字段的默认值:

在 update 操作中,我们可以通过 setDefaultsOnInsert 选项来设置插入文档时的默认值。需要注意的是,setDefaultsOnInsert 只有在 upsert 为 true 时才会生效。

总结

Mongoose 中的 Schema 字段默认值的设置方法非常简单,只需要在 Schema 定义中设置 default 属性即可。需要注意的是,在 update 操作中需要手动设置默认值,并且 setDefaultsOnInsert 只有在 upsert 为 true 时才会生效。希望本文能够给大家带来帮助,让大家更好地使用 Mongoose。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65673fffd2f5e1655d01eeb8


纠错
反馈