大于整数的地方 - Waterline / Sails / Mongo

时间:2017-11-06 22:18:40

标签: mongodb sails.js waterline

我试图在使用Mongo的Sails中执行多个where语句,但我没有任何运气

    var start = moment().subtract(30, 'days').unix();
    var end = moment().unix();

    console.log(start, end)

    Measurement.find()
    .where({
        user: jwt.decoded.id,
        and: [
          { timestamp: { ">=": start }},
          { timestamp: { "<=": end }}
        ],
    })
    .sort('timestamp DESC')
    .then((results) => {
        return res.view('dashboard', {title: 'MMOL', data: results, tab: 'dashboard', code: 90})
    })

举个例子,我的开始时间是1507410695,我的结束时间是1510006295。

在我的收藏中,我有大约40条记录介于这些日期之间,它们的结构如下:

{
    "_id": {
        "$oid": "5a0083aa25b9c9bb37b5fc5d"
    },
    "timestamp": 1509916500,
    "blood": 9,
    "carb": 20,
    "calorie": 230,
    "insulin": 2,
    "notes": null,
    "user": {
        "$oid": "59fcced3c40317c657878b5c"
    },
    "createdAt": {
        "$date": "2017-11-06T15:45:46.572Z"
    },
    "updatedAt": {
        "$date": "2017-11-06T22:05:35.270Z"
    }
}

我根本无法得到任何结果。据我所知,我正确地做到了这一点。如果我删除了和语句,我会得到所有结果而不会出现问题。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用

,而不是使用and
user: jwt.decoded.id, 
timestamp: { 
   '>=' : start, 
   '<=' : end 
}