sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Cambiar el valor de la variable en el documento después de que pase un tiempo?

Básicamente, lo que está pidiendo no se puede hacer así, tiene 2 formas de seguir esta ruta.

  1. Cada vez que hay una recuperación de entrada, puede ejecutar un gancho de mangosta como pre('find') eso verificará si han pasado 4 semanas, de ser así, cambie la desactivación a true puede obtener más información sobre los ganchos en aquí

Algo similar a este ejemplo:este ejemplo se tomó de aquí

Schema.pre('find', function() {
  if (!this.getQuery().userId) {
    this.error(new Error('Not allowed to query without setting userId'));
  }
});
  1. Puede ejecutar un trabajo cron todos los días una o dos veces (depende de su período de tiempo) que sigue buscando registros que pasaron 4 semanas desde la creación y establecer deactivated a true

Este es un buen paquete cron cron

EDITAR:El trabajo cron puede ser cualquier período, cada 10 minutos, 1 hora, 2, 100, etc...

Buena suerte