Mongoose е проектиран по такъв начин, че можете да моделирате вашите таблици релационно с относителна лекота и да попълвате релационни данни въз основа на ref сте дефинирали в схемата. Проблемът е, че трябва да внимавате с попълването. Ако попълвате твърде много или влагате своите популации, ще се сблъскате с проблеми с производителността.
Вашият подход в Edit 1 до голяма степен е правилно, но обикновено не искате да попълвате отдалечен ref въз основа на Number или задайте _id на модел към Number тъй като mongo използва свой собствен механизъм за хеширане за управление на _id , това обикновено е ObjectId с _id подразбира се. Пример, както е показано по-долу:
var ScoreSchema = new mongoose.Schema({
user : { type: Schema.Types.ObjectId, ref: 'User' },
game : { type: Schema.Types.ObjectId, ref: 'Game' },
score: Number
});
Ако по някаква причина трябва да поддържате идентификатор на номер за вашите записи, помислете дали да го наречете uid или нещо, което няма да противоречи на вътрешностите на mongo / mongoose. Успех!