在猫鼬中查询多个日期范围

Cap*_*pCa 2 mongoose node.js

我想在 mongoose 中查询多个日期范围。我仍然尝试:

Model.find({
  my_date: [
    // range 1
    {
      "$gte": new Date(),
      "$lt": new Date()
    },
    {
      "$gte": new Date(),
      "$lt": new Date()
    },
    // ...
  ]
});
Run Code Online (Sandbox Code Playgroud)

问题是它抛出一个错误:“Cast to date failed for value [object Object]”。

因此,我希望 mongoose 将数组解释为一个输入元素而不是它们的列表。有谁知道如何解决问题?

谢谢 :-)

最好的事物

Mar*_*coS 5

你只是错过了一个$or条款:

Model.find({
  $or: [
    { // range 1
      my_date: { '$gte': new Date(), '$lt': new Date() }
    },
    { // range 2
      my_date: { '$gte': new Date(), '$lt': new Date() }
    }
  ]
}, callback);
Run Code Online (Sandbox Code Playgroud)