【问题标题】:How to store and query between date values in Kinvey's REST API?Kinvey 的 REST API 中如何存储和查询日期值?
【发布时间】:2013-02-04 21:52:12
【问题描述】:

kinvey 似乎不支持特定的日期类型。

那么应该如何存储日期才能在特定日期之间进行查询呢?

我对在他们的 REST 平台上实现这一点特别感兴趣。

这个 mocha 测试似乎通过了,但是,我担心它们会按字母顺序过滤,这可能会导致一些我还没有想到的边缘情况。

(请注意,我已抽象为通用模块的 mocha 测试缺少样板)

describe(kinvey.description, function () {
    it('query between two dates', function (done) {
        var query = 'query={"date_of_birth":{"$gt" : "1948-01-01", "$lt" : "1948-08-19"}}&sort=last_name'
        kinvey.get('/appdata/' + kinvey.appKey + '/static?' + query, function (response, body) {
            assert.equal(body.length, 1)
            //john bonham
            assert.equal(body[0].first_name, 'John')
            assert.equal(body[0].last_name, 'Bonham')
            done()
        })
    })
})

这是我正在玩的测试数据。

(有足够声望的人可以添加一个Kinvey标签吗?)

【问题讨论】:

    标签: rest date between kinvey


    【解决方案1】:

    我是 Kinvey 工程团队的一员。只要您的日期是 ISO-8601 格式 (https://en.wikipedia.org/wiki/ISO_8601),日期就会正确查询。如果日期没有存储所有数字,则会出现边缘情况。

    例子:

    2012-02-08 会正确排序和查询,但 2012-2-8 不会。

    只要日期是这种格式,下面的查询过滤器就可以正常工作。

    {"date_of_birth":{"$gt" : "1948-01-01", "$lt" : "1948-08-19"}}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      • 1970-01-01
      • 2020-07-27
      • 1970-01-01
      • 2020-09-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多