Контекст: я создаю веб-сайт, на котором пользователи могут создавать учетные записи. Затем они должны подтвердить свои учетные записи, открыв электронное письмо с подтверждением. Я использую Node.js и Mongodb.
Что я пытаюсь сделать: если пользователь не подтвердил свою учетную запись за последние 24 часа, удалите свою учетную запись.
Пример аккаунта для удаления:
{
created: 3294038434,
notValid: "dslafjksdfkj"
}
Пример аккаунта, который нельзя удалять:
{
created: 203498324,
notValid: false
}
Ключ created
сохраняет дату как number
. Если notValid
равно false
, то учетная запись подтверждена. Если notValid
является string
, то учетная запись еще не проверена, и строка представляет собой код подтверждения.
Есть ли способ для пользователя deleteMany()
и иметь что-то вроде этого фильтра?
{
Date.now() > created + 1000 * 60 * 60 * 24 && typeof(notValid) == "string"
}
Я знаю, что могу просто прочитать каждого пользователя, а затем выполнить логику, но есть ли способ просто заставить mongodb выполнять логику/фильтр за меня?