簡體   English   中英

如何在Android中為parse.com的查詢中的鍵設置OR條件

[英]How to set OR condition for keys in a query to parse.com in android

我在parse.com中有一張用戶表,其中每個用戶都包含字段first_namelast_name 我正在搜索用戶,無法弄清楚條件OR 我的例子:

ParseRelation<ParseUser> relation = user.getRelation("Friends");
ParseQuery<ParseUser> query = relation.getQuery();
query.whereContains("first_name", "typed text"); //need to add OR for the same condition, 
//but for the field "last_name"
query.findInBackground(new FindCallback<ParseUser>() {
    @Override
    public void done(List<ParseUser> objects, ParseException e) {
        if(e == null){
            //doing work
        }else {
            e.printStackTrace();
        }
    }
});

我試圖這樣做:

query.whereContains("first_name", "typed text").whereContains("last_name", "typed text");

但不,它正在尋找同時滿足這兩個條件的情況。 whereContainsAll()方法適用於值list ,但不適用於鍵。

我可以通過發送2個請求來做到這一點,但這是一個糟糕的解決方案。 有辦法嗎?

您可以使用ParseQuery.or(queries)這是docs鏈接: https ://parse.com/docs/android/guide#queries-compound-queries

        ParseQuery<ParseObject> query1 = new ParseQuery<ParseObject>("Place");
        query1.whereEqualTo("email","xyz@gmail.com");

        ParseQuery<ParseObject> query2 = new ParseQuery<ParseObject>("Place");
        query2.whereEqualTo("place_mobile",909090XXXX);

        List<ParseQuery<ParseObject>> list = new ArrayList<ParseQuery<ParseObject>>();
        list.add(query1);
        list.add(query2);

        ParseQuery<ParseObject> query = ParseQuery.or(list);
        query.findInBackground();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM