Я новичок в MongoDB. Я пишу REST API, используя Express, Mongoose, Nodejs.
Я хочу получить все цены (сбор) между двумя датами. В mongoDB моя дата сохраняется как «2016-01-05 00:00:00». и мои вводные начальные и конечные даты имеют формат «05-01-2016 0,00» в виде строки.
Чтобы получить данные между двумя датами, я использую запрос монго ниже:
let startDate = moment(req.params.startdate, "DD-MM-YYYY hh:mm:ss").format("YYYY-MM-DD hh:mm:ss")
let endtDate = moment(req.params.endtdate, "DD-MM-YYYY hh:mm:ss").format("YYYY-MM-DD hh:mm:ss")
Price.find({
date: {
$gte: startDate,
$lte: endtDate
}
})
.exec()
.then(result => {
res.status(200).json(result)
})
.catch(err => {
res.status(500).json({
error: err
})
})
но получаю ошибку ниже:
UnhandledPromiseRejectionWarning: CastError: Cast to date failed for value "Invalid date" at path "date" for model "prices"
Пожалуйста, дайте мне знать, если я делаю что-то не так.