Mongoose中的Unique不适用于第二个字段



我的数据库使用Mongodb和Mongoose,但当我在同一Schema中第二次使用unique: true时,它不起作用。

这是我的模式:

const User = new Schema({
userName: {
type: String,
unique: true,
required: true
},
email: {
type: String,
unique: true,
required: true
},
password: {
type: String,
required: true
},
avatar: String,
createdAt: {
type: Date,
default: Date.now
}
});

对于userName,它工作得很好,但对于email字段,它根本不工作。

这是我的数据库配置:

mongoose.connect("mongodb://localhost:27017/test", {
useNewUrlParser: true,
useUnifiedTopology: true,
useCreateIndex: true,
useFindAndModify: false,
});

请参阅此图片了解我当前的数据库状态:测试文档图片

他们有一个唯一的用户名,但有相同的电子邮件。

Mongo和mongoose如果由于现有的非唯一字段而无法创建索引,则会以静默方式失败。

重置数据库或删除重复的文档,然后重新启动应用程序。

i重置mongo并修复问题

相关内容

最新更新