Внедренный документ против ссылки в модели дизайна мангуста?
Допустим, я создаю дискуссионный форум, используя Node.js и mongoose. Пользователь может иметь несколько форумов, а форум может иметь несколько комментариев. Пользователь может также пригласить других пользователей присоединиться к форуму. Таким образом, мой вопрос касается дизайна модели с использованием справочного или встроенного документа!
Если я пойду со встроенным документом, это будет выглядеть так:
var Comment = new Schema({ ... });
var Forum = new Schema({
title: {type: String},
content: {type: String},
comments: [Comment],
attendees: [User]
});
var User = new Schema({
name: {type: String},
email: {type: String},
forums: [Forum]
});
var Account = mongoose.model('Account', User);
Используя вышеупомянутый дизайн, я боролся с: когда пользователь добавляет комментарий к форуму, и этот форум находится на моих форумах, я не думаю, что смогу получить обновление нового комментария в моем списке форумов. Я? Знаете ли вы, как заставить встроенный документ работать в этом случае?
Таким образом, я думал об использованииссылка в мангусте. В этом случае у меня будет две коллекции:учетная запись, а такжеФорум, Добавление нового комментария к форуму в этом случае не является проблемой. Я прав?
Было быссылка быть лучше чемвстроенный документ для этого приложения?
Заранее спасибо,