2017-02-09 4 views
0

スキルセット&の場所に基づいてユーザーデータをフィルタリングしようとしていますが、どこに[と]と[または]の両方の場所が一緒にフィルタリングされています。私のMongoのクエリは次のようになります:RESTフィルタ検索条件の使用場所

{ 
    "where": { 
     "and": [{ 
      "or": [{ 
       "location": "Hyderabad" 
      }, { 
       "location": "Mumbai" 
      }] 
     }, { 
      "or": [{ 
       "skill_set": "Java" 
      }, { 
       "skill_set": "Database" 
      }] 
     }] 
    } 
} 

私はRESTフィルタを介して上記のmongoクエリを達成しようとしています。

filter[where][and][0][or][0][location]=Hyderabad&filter[where][and][0][or][1][location]=Mumbai&filter[where][or][0][skill_set]=Java&filter[where][or][1][skill_set]=Database 

私のコンソールにエラーが表示されませんが、私は私のDBにデータがあるにもかかわらず、すべてのデータを取得していないよ。これまでのところ私のRESTフィルタはこのようなものです。 RESTフィルターで何か問題がありますか?

答えて

0

あなたのコードには問題がありません。しかし、このように簡単にすることができます。

orの代わりにinqを使用できます。

{ 
    "where": { 
     "and": [{ 
      "location": { "inq": [ "Hyderabad", "Mumbai" ] } 
     }, { 
      "skill_set": { "inq": [ "Java", "Database" ] } 
     }] 
    } 
} 
+0

RESTフィルタクエリについて質問しています – Dyo