MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Modifier la valeur de la variable dans le document après un certain temps ?

Ce que vous demandez fondamentalement ne peut pas être fait comme ça, vous avez 2 façons d'emprunter cette voie.

  1. Chaque fois qu'il y a une récupération d'entrée, vous pouvez exécuter un hook de mangouste tel que pre('find') qui vérifiera si 4 semaines se sont écoulées si c'est le cas, puis changez le désactivé en true vous pouvez en savoir plus sur les crochets sur ici

Quelque chose de similaire à cet exemple - cet exemple a été tiré de ici

Schema.pre('find', function() {
  if (!this.getQuery().userId) {
    this.error(new Error('Not allowed to query without setting userId'));
  }
});
  1. Vous pouvez exécuter une tâche cron tous les jours une ou deux fois (selon votre période) qui vérifie en permanence les enregistrements qui ont passé 4 semaines de création et définir deactivated à true

C'est un bon paquet cron cron

EDIT :La tâche cron peut être n'importe quelle période, toutes les 10 minutes, 1 heure, 2, 100, etc...

Bonne chance