2016-11-23 11 views
2

私は、startDateプロパティとendDateプロパティを持つ単純なモデルオブジェクトを持っています。Strongloop Loopback RESTクエリと/またはその間の組み合わせ

REST APIを使用して 'と/および'と 'の間'で照会することはできません。私は '開始日の範囲'または '終了日の範囲'の間で 'を照会したいと思います。私は、次のクエリは、働いているだろうと思っているだろう:

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

?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.startDate][between][1]=2017-01-22 

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

は私のモデル定義であります10


モデル/ 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": {} 
} 

答えて

1

私はどちらか、その場合のRESTクエリの作業を行うことができませんでした。

最終的に、我々は文字列化されたJSON経由でクエリを作成するに頼る必要があった、実際には、ので、それもずっと簡単構築クエリを作っこの

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)}`; 

のようなものをdocs

を参照してください。

+0

素敵なトリック..非常に柔軟性があります。 – Abhishek

関連する問題