我有一个模特:
let MySchema = new Schema({
created: {
type: Date,
default: Date.now
},
updated: {
type: Date
},
user_id: {
type: Schema.ObjectId,
ref: "User",
required: true
},
material_id: {
type: Schema.ObjectId,
ref: "Material",
required: true
},
data: { }
});
如何设置user_id
和material_id
唯一的组合,但我需要将这两个字段组合成唯一,而不是仅为每个字段添加unique: true
。
答案 0 :(得分:0)
找到了答案:
MySchema.index({ user_id: 1, material_id: 1 }, { unique: true });
它将使用两个字段的组合创建索引,并且您将无法使用相同的两个索引在mongoDB中创建新文档,但如果某些索引与已在DB中保存的索引不同,则可以创建文档。 这正是我想要的。