我一直在寻找有关索引引用Mongoose(v5)的信息,但我还有两个问题:
所以,我有两个这样的架构A和B:
const aSchema = new Schema({
members: [{
type: Schema.Types.ObjectId,
ref: 'B',
index: true,
required: true
}]
}, { timestamps: true })
const bSchema = newSchema //etc
aSchema.static({
add(initialMember, otherMembers){
const members = [initialMember, ...otherMembers].sort()
return B.findOne({members})
}
})
const A = mongoose.model('A', aSchema)
const B = mongoose.model('B', aSchema)
所以,我索引B.members的目标是允许我们从一个B文档及其对应的id查找包含对B引用的A文档开始。A.collection上的listIndexes方法将列表members_1
设置为索引。
{autoReconnect: false}
连接的测试环境。当它与数据库断开连接时,将引发“不允许使用过期的会话”错误。显然,仅对于该索引和该索引,在数据库断开连接之前索引尚未完成。谢谢!