«Правильный» способ сохранить список последних элементов для профиля пользователя в MongoDB - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть пользовательские профили, хранящиеся в Mongo для небольшого веб-приложения.Приложение позволяет людям регистрировать время в отношении заданий, задания имеют числовой код (4 цифры) и имя (текст).Задания нигде в Монго не существуют, они находятся в другой системе, поэтому я не думаю, что мне нужно делать ссылки на объекты, но я в основном хочу иметь возможность хранить 5-10 последних зарегистрированных заданий.

Я мог бы хранить их в виде массива объектов с кодом, именем и отметкой времени, а затем использовать javascript для сортировки заданий, но обычно я вижу, что люди рекомендуют, чтобы работа по возможности помещалась в базу данных.

Логика хранения информации, скорее всего, будет выглядеть примерно так ...

1) ЕСЛИ задание уже в списке, ТО ТОЛЬКО удалить из списка и добавить снова с новой отметкой времени (bump)в начало списка) 2) В противном случае, если задания нет в списке, ТО добавьте в начало списка

Но могу ли я установить ограничение в Mongo, чтобы хранить только N записей / поддокументов, и могу ли я что-то поместить всхема для обработки, что происходит в пункте 1 выше?Если нет, и все это должно быть сделано в Javascript и каждый раз переписываться в профиль пользователя, должен ли я просто пойти по этому пути?

Использование Node w / Mongoose, если это что-то меняет.

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