【问题标题】:Strongloop Loopback REST Query and/or combined with betweenStrongloop Loopback REST 查询和/或结合在
【发布时间】:2017-04-06 20:55:59
【问题描述】:

我有一个带有 startDate 和 endDate 属性的简单模型对象。

我似乎无法使用 REST api 同时查询“和/或”和“之间”。我想在“startDate 范围”或“endDate 范围之间”进行查询。我原以为以下查询会起作用:

?filter[where][or][0][event.startDate][between][0]=2017-01-15&filter[where][or][0][event.startDate][between][1]=2017-01-22&filter[where][or][1][event.endDate][between][0]=2017-01-15&filter[where][or][1][event.endDate][between][1]=2017-01-22

理想情况下,我希望在 event.startDate 和 event.endDate 之间进行查询,但环回不喜欢以下查询:

?filter[where][event.startDate][between][0]=2017-01-15&filter[where][event.endDate][between][1]=2017-01-22

查询独立工作就好了:

?filter[where][event.startDate][between][0]=2017-01-15&filter[where][event.startDate][between][1]=2017-01-22

?filter[where][event.endDate][between][0]=2017-01-15&filter[where][event.endDate][between][1]=2017-01-22

这是我的模型定义:


模型/event.json

{
  "name": "event",
  "plural": "events",
  "base": "PersistedModel",
  "idInjection": true,
  "options": {
    "validateUpsert": true
  },
  "properties": {
    "name": {
      "type": "string",
      "required": false
    },
    "startDate": {
      "type": "date",
      "required": false
    },
    "endDate": {
      "type": "date",
      "required": false
    }
  },
  "validations": [],
  "relations": {},
  "acls": [],
  "methods": {}
}

【问题讨论】:

    标签: rest strongloop between loopback


    【解决方案1】:

    在这种情况下,我也无法使 REST 查询工作。

    最终,我们不得不求助于通过字符串化 JSON 构建查询,请参阅 docs

    所以,像这样

    let filter = {
      where: {
        or: [
          {
            'event.startDate': {
              between: ['2017-01-15', '2017-01-22']
            }
          },
          {
            'event.endDate': {
              between: ['2017-01-15', '2017-01-22']
            }
          }
        ]
      }
    };
    
    let url = `/api?filter=${JSON.stringify(filter)}`;
    

    实际上,它还使查询构建变得更加简单。

    【讨论】:

      猜你喜欢
      • 2016-02-16
      • 1970-01-01
      • 1970-01-01
      • 2016-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多