尝试为ObjectId字段创建唯一索引。 我试过了:
var schema = new Schema({
field: {
type: Schema.ObjectId,
ref: 'SomeModel',
unique: true,
} });
和...
var schema = new Schema({
field: {
type: Schema.ObjectId,
ref: 'SomeModel',
index: {unique: true}
} });
我无法使其正常工作,这似乎是一个非常常见的问题。
答案 0 :(得分:1)
Schema.Types.ObjectId
代替Schema.ObjectId
答案 1 :(得分:1)
解决。这是type
定义的错字,对我来说是愚蠢的......
类型应为:
type: Schema.Types.ObjectId
杰克布莱克指出。我没有注意到这个错字,因为我的代码定义仍适用于查询填充。奇怪的行为。