O que você está pedindo basicamente não pode ser feito assim, você tem 2 maneiras de seguir esse caminho.
- Toda vez que há uma recuperação de entrada, você pode executar um gancho mangusto como
pre('find')
que verificará se 4 semanas se passaram, se sim, altere o desativado paratrue
você pode aprender mais sobre ganchos aqui
Algo semelhante a este exemplo - este exemplo foi retirado aqui
Schema.pre('find', function() {
if (!this.getQuery().userId) {
this.error(new Error('Not allowed to query without setting userId'));
}
});
- Você pode executar um trabalho cron todos os dias uma ou duas vezes (depende do seu período de tempo) que mantém a verificação de registros que passaram 4 semanas de criação e define
deactivated
paratrue
Este é um bom pacote cron cron
EDIT:O cron job pode ser qualquer período, a cada 10 minutos, 1 hora, 2, 100, etc...
Boa sorte