【发布时间】:2021-07-13 02:16:16
【问题描述】:
例如,我有包含此字段的文档:
startDate: 2021-04-14T22:00:00.000+00:00
endDate: 2021-04-19T22:00:00.000+00:00
我想获取特定日期(如今天)在日期范围内的所有文档。 是否可以进行这样的查询? 例如,如果我搜索 4 月 18 日,则会得到该文档。
我是这样想的:
db.posts.find(
{
$gte: { startDate: new Date() },
$lt: { endDate: new Date() }
});
但这不起作用...我收到错误The provided parameters were invalid. Check your query and try again.
我认为 Node.js 中的 new Date() 不正确?
编辑:
这是我的控制器:
const getActiveTours = async (req, res) => {
try {
const activeTours = await Tour.find({
startDate: { $gte: new Date() },
endDate: { $lt: new Date() },
}).exec();
res.status(200).send(activeTours);
} catch (error) {
return res.status(500).send({ errorMessage: error });
}
};
我导出了它,这是我的端点:
router.get('/getactivetours', tourController.getActiveTours);
我试图在 Postman 中调用它,但返回一个空的 []...
【问题讨论】:
标签: javascript node.js database mongodb mongoose