我在nodejs中有一个带有mongoose的用户模式,如下所示

userschema = mongoose.Schema({
    org: String,
    username: String,
    fullname: String,
    password: String,
    email: String
});

但有时我需要添加更多字段.

The main question is: Can I have optional fields in a monogoose schema?

推荐答案

默认情况下,mongoose模式中的所有字段都是可选的(当然,除了_id).

仅当向字段定义中添加required: true时,才需要该字段.

因此,将您的模式定义为所有可能字段的超集,在所需字段中添加required: true个字段.

Mongodb相关问答推荐

我无法将文档发送到我的MongoDB集合,因为它告诉我使文档无效

pymongo - ifnull 重新调整整个对象而不是特定字段

分组前的 MongoDb 聚合总数

使用golang中的过滤器从mongodb复合集合中获取所有数据

MongoDb $filter,然后获取非重复计数

聚合 $accumulator + $project

mongodb - 查找包含至少 3 个填充数组的记录

MongoDB聚合 - 用另一个数组过滤数组

将 MongoDB BsonDocument 转换为字符串

如何使用 mongoose 从 MongoDb 获取数据?

如何在 MongoDB 集合中查找与给定条件匹配的文档和单个子文档

如何对连接到 mongo 的方法进行单元测试,而不实际连接到 mongo?

Mongoose.js:嵌套属性的原子更新?

REACT 获取发布请求

如何在 Meteor 应用程序之间共享 MongoDB 集合?

在 mongodb 中插入当前日期时间

C# MongoDB 驱动程序 - 如何使用 UpdateDefinitionBuilder?

如何使用 Pymongo 在 MongoDB 中 Select 单个字段?

判断字段是否存在于数组的子文档中

MongoDB InsertMany 与 BulkWrite