Проектирование модели MongoDB? - PullRequest
0 голосов
/ 22 февраля 2012

У меня есть один концептуальный вопрос о проектировании модели данных в Монго БД. У меня есть некоторые записи для "списков". Каждый список представляет собой запись «одной строки» с полями id, descr, createBy и т. Д. Но теперь у меня есть требование, чтобы каждый «список» мог быть доступен другим пользователям. Каков наилучший способ разработки / перепроектирования модели, чтобы при входе пользователя в систему видеть «списки», которые он создал, и «списки», которые были переданы ему? Я думал о создании нового поля «sharedWith», в котором все имена пользователей, которым «разделяют» список, будут разделены запятой (или чем-то еще). И тогда, когда сделан запрос на поиск в этом поле. Но почему-то этот подход не кажется мне очень полезным. Можете ли вы дать мне несколько советов или рекомендаций? Я использую nodejs с mongoose.

Спасибо!

1 Ответ

1 голос
/ 22 февраля 2012
User: {
  ...
  myLists: Array<ListObject>
  sharedLists: Array<ListObject>
};

ListObject: {
  ...
  owner: User,
  sharedWith: Array<User>
};

Это показалось бы разумным замыслом для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...