Я хочу запросить пользователя, где updatedAt меньше или равно сегодня, используя агрегат, потому что я занимаюсь другими вещами, такими как сортировка по указателям.
Я использую облачный код для определения запроса с сервера.
Сначала я попытался с помощью mongoDB Compass проверить мой запрос с помощью ISODate, и он работает, но использование его в NodeJS, похоже, работает неправильно.
Я также заметил, что эта проблема уже исправлена, говорят они. Я также видел их тесты.
Вот ссылка на этот PR.
Я прохожу свидание вот так:
const pipeline = [
{
project: {
_id: true,
process: {
$substr: ['$_p_testdata', 12, -1]
}
}
},
{
lookup: {
from: 'Test',
localField: 'process',
foreignField: '_id',
as: 'process'
}
},
{
unwind: {
path: '$process'
}
},
{
match: {
'process._updated_at': {
$lte: new Date()
}
}
}
];
const query = new Parse.Query('data');
return query.aggregate(pipeline);
Я ожидаю, что значением будет массив длиной 4, но я получу только пустой массив.
Мне удалось получить данные без даты совпадения.