我的一個貓鼬模式的刪除多對多的引用是一個多對多的關係:在貓鼬
var UserSchema = new Schema({
name : String,
groups : [ {type : mongoose.Schema.ObjectId, ref : 'Group'} ]
});
var GroupSchema = new Schema({
name : String,
users : [ {type : mongoose.Schema.ObjectId, ref : 'User'} ]
});
如果我刪除了一批,反正是有從用戶的所有團體「刪除該組OBJECTID陣列?
GroupSchema.pre('remove', function(next){
//Remove group._id from all the users
})
如果'groups'沒有編入索引,您將強制進行全表掃描和用戶數組掃描。 – WiredPrairie
@WiredPrairie如果雙向鏈接的引用是可靠的,那麼有一種解決方法。我補充說,作爲一個更好的選擇。 – JohnnyHK
是的,這是一個改進,應該更好地工作。 – WiredPrairie