Я новичок в MongoDB - из реляционной базы данных. Я хочу разработать структуру вопроса с некоторыми комментариями, но я не знаю, какое отношение использовать для комментариев: embed
или reference
?
Вопрос с некоторыми комментариями, например stackoverflow , будет иметь такую структуру:
Question
title = 'aaa'
content = bbb'
comments = ???
Сначала я хочу использовать встроенные комментарии (я думаю, что embed
рекомендуется в MongoDB), например:
Question
title = 'aaa'
content = 'bbb'
comments = [ { content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'} ]
Это понятно, но меня беспокоит этот случай: если я хочу отредактировать указанный комментарий, как мне получить его содержание и вопрос? Нет ни того, _id
чтобы позволить мне найти его, ни question_ref
позволить мне найти его вопрос. (Я настолько новичок, что не знаю, есть ли способ сделать это без _id
и question_ref
.)
Должен ли я использовать ref
нет embed
? Тогда я должен создать новую коллекцию для комментариев?