Значение ISODate MongoDB с 0 миллисекундами - PullRequest
0 голосов
/ 28 августа 2018

В коллекции MongoDB я храню некоторые документы, которые имеют 2 свойства startTime и endTime, оба из которых имеют тип ISODate.

Код написан на javascript (node.js) и Mongoose для взаимодействия с MongoDB.

Модели мангусты выглядят примерно так:

startTime: {
    type: Date,
    required: true
},
endTime: {
    type: Date,
    required: true
},

В моем коде я явно устанавливаю секунды и миллисекунды равными 0 перед вставкой в ​​базу данных. Однако у вставленных дат есть некоторые дополнительные биты, которые я предполагаю равными миллисекундам (я могу ошибаться)

это выдержка из моего кода, которая устанавливает секунды и миллисекунды в 0

let startTimeMoment = moment.utc(startTime);
startTimeMoment.seconds(0);
startTimeMoment.milliseconds(0);

let endTimeMoment = moment.utc(endTime);
endTimeMoment.seconds(0);
endTimeMoment.milliseconds(0);

Ниже приведен скриншот из документа в базе данных коллекции

enter image description here

Причина, по которой это проблематично, заключается в том, что я выполняю некоторые запросы, учитывающие startTime и endTime, и из-за этих миллисекунд запросы возвращают пустые результаты.

Что мне не хватает?

1 Ответ

0 голосов
/ 28 августа 2018

Оказывается, код вел себя как ожидалось.

Несмотря на то, что я устанавливал секунды и миллисекунды в 0, я сохранял значения до обновления базы данных (facepalm)

...