Mongoose är utformad på ett sådant sätt att du kan modellera dina tabeller relationellt med relativ lätthet och fylla i relationsdata baserat på ref du definierade i schemat. Problemet är att du måste vara försiktig med att fylla. Om du befolkar för mycket eller häckar dina populationer kommer du att stöta på prestandaflaskhalsar.
Ditt tillvägagångssätt i Edit 1 är i stort sett korrekt men du vill vanligtvis inte fylla i en fjärrkontrollerad ref baserat på ett Number eller ställ in _id av en modell till ett Number eftersom mongo använder sin egen hashmekanism för att hantera _id , skulle detta vanligtvis vara ett ObjectId med _id underförstådd. Exempel som visas nedan:
var ScoreSchema = new mongoose.Schema({
user : { type: Schema.Types.ObjectId, ref: 'User' },
game : { type: Schema.Types.ObjectId, ref: 'Game' },
score: Number
});
Om du av någon anledning behöver behålla ett nummer-ID för dina register, överväg att kalla det uid eller något som inte kommer i konflikt med mongo / mongoose internals. Lycka till!