如何设置FlightNumber变量为唯一值?Mongoose Schema配置咨询
实现FlightNumber字段唯一约束的配置方法
在Mongoose的Schema定义中,仅需要给FlightNumber字段添加unique: true配置项即可,该配置会在MongoDB层面为对应字段创建唯一索引,保证不会写入重复值。
修改后的完整代码如下:
const flightSchema = new Schema ({ FlightNumber: { type: String, required: true, unique: true // 新增唯一约束配置 }, DepartureTime: { type: Date, required: true } })
注意事项
- 配置唯一约束前需要先确认当前MongoDB集合中已有的
FlightNumber数据没有重复值,否则唯一索引创建会失败 - 写入重复的航班号时,数据库会抛出错误码为
11000的异常,你可以在业务代码中捕获该错误做相应的友好提示 - 如果你需要允许该字段为空时可以重复,可以额外搭配
sparse: true配置,不过由于当前字段已经设置了required: true强制必填,该配置可选
内容的提问来源于stack exchange,提问作者Ali Massoud
相关产品推荐
相关产品推荐

