Как я могу получить все документы, начиная и заканчивая день для любой конкретной даты? - PullRequest
0 голосов
/ 31 октября 2018

Я отправляю дату на сервер nodejs в следующем формате

2018-11-02T00:36:00+05:30 // Actual time is 12:36AM

Когда я проверяю документ в базе данных (студия 3T), формат выглядит как

2018-11-01T19:06:00.000Z // minus 5.30 hours from the actual time 12:36AM

Теперь ситуация такова, что мне нужно искать все документы, начиная и заканчивая день для любой данной даты.

Как мне вытащить все документы на дату 2018-11-02

Если я запрашиваю, чтобы найти документы по времени начала и окончания 2018-11-02 Например, с моментом js начала и окончания дня:

Я получаю сегодня как 2018-11-01T18:30:00.000Z, а завтра как 2018-11-01T23:59:59.999Z

Что я пробовал

const today = req.body.date;
const tomorrow = moment(today).endOf('day').toISOString();

"startDate" : { "$gte": new Date(today), "$lt": new Date(tomorrow) }
// today is 2018-11-01T18:30:00.000Z tomorrow is 2018-11-01T23:59:59.999Z

Указывает неверную дату окончания.

1 Ответ

0 голосов
/ 31 октября 2018

Я только что добавил один день к сегодняшнему дню в формате ISO

const today = moment(new Date(req.body.date)).startOf('day');
const tomorrow = moment(new Date(today)).add(1, 'days').toISOString();

"startDate" : { "$gte": new Date(today), "$lt": new Date(tomorrow) }
...