В mongodb у меня есть коллекция (пользователь), где есть 2 информации: статус и срок действия (дата). Как автоматически изменить статус истек при истечении срока действия на сервере базы данных. Спасибо
сервер монгодб. Как автоматически изменить статус просрочено при истечении срока действия
comment
Хотя я не знаком с MongoDB в частности и не могу найти ничего подобного в документации, когда дело доходит до обработки данных в целом, вы действительно не хотите хранить такие данные вычисляемых полей - это излишне избыточно. Если вы ищете простой способ исключить записи с истекшим сроком действия из запроса, вам следует запрашивать записи, дата истечения которых более поздняя, чем время выполнения запроса. Если вы ищете удобочитаемость, пользовательский интерфейс вашего приложения должен иметь логику для отображения активной или просроченной метки на основе даты истечения срока действия в наборе данных.
- person p0lar_bear   schedule 03.12.2018
Ответы (1)
Вы можете автоматически удалять документы, используя TTL-индексы, если это помогает, и/или слушать /реагируйте на изменения, используя потоки изменений, которые также широко обсуждались здесь: Как прослушивать изменения в коллекции MongoDB?
Однако помимо этого, на данном этапе в MongoDB нет ничего, что можно было бы использовать для достижения такого поведения, поэтому вам придется создавать что-то самостоятельно, используя, например, внешний планировщик, который регулярно запускает команду обновления, устанавливая нужные значения для нужных документов.
person
dnickless
schedule
03.12.2018