我正在创建一个搜索端点,该端点将通过日期范围过滤结果。
http://0.0.0.0:3000/api/v1/transactions/search?endDate=2018-10-03T14:07:03.382Z
因此,以上所述,希望搜索直到且等于created_at日期的所有交易。
console.log(req.query.endDate) // 2018-10-03T14:07:03.382Z
这是我建立的查询的一部分
created_at = {
gte: startDate,
lte: endDate,
};
let query = {
...query,
created_at
}
const transactions = await Transaction.find(query);
这是我的查询字符串的样子
{ created_at: { lte: '2018-10-03T14:07:03.382Z' } }
但是我遇到以下错误。
到目前为止,值“ {lte:'2018-10-03T14:07:03.382Z'}”的发布失败 模型“交易”的路径“ created_at””
答案 0 :(得分:2)
您必须使用日期数据类型,日期查询不接受字符串。
尝试
{ created_at: { $lte: new Date('2018-10-03T14:07:03.382Z') } }