2013-03-20 20 views
10

我正在使用Parse作爲我的應用程序。我想查詢一個列,該列設置爲指向其他表的列。以下是查詢:如何查詢設置爲指向其他表的指針的值

ParseQuery query = new ParseQuery("CategoryAttribute"); 
     query.whereEqualTo("categoryId", categoryId); 
     query.findInBackground(new FindCallback() { 
      @Override 
      public void done(List<ParseObject> categoryAttributes, ParseException e) { 
       if (e == null) { 
        for (int i = 0; i < categoryAttributes.size(); i++){ 
         String atributeCategoryId = categoryAttributes.get(i).getString("categoryId"); 
         String attributeKey = categoryAttributes.get(i).getString("attributeKey"); 
         String attributeValue = categoryAttributes.get(i).getString("attributeValue"); 

         setCategoryAtributeRow(atributeCategoryId, attributeKey, attributeValue); 
        } 
       } else { 
        Log.d("score", "Error: " + e.getMessage()); 
       } 
      } 
     }); 

所以categoryId列是一個指向其他表的指針。其他列工作正常。 我試圖掃描API和指南,但找不到所需的解決方案。幫助將非常感謝!

+0

你有沒有發現這個任何解決方案 – 2013-06-06 03:55:58

回答

13

這裏是解決這一之一: 首先你需要從表的類型創建的parseObject:

ParseObject sale = ParseObject.createParseObject("Sale"); 

那麼你需要從結果得到的parseObject:

sale = result.getParseObject(pointer_field); 

現在您可以從sale中提取任何與正常情況相同的字段,例如:

sale.getString("some_field") 

注意: 當您正在進行查詢時,如果您希望能夠在返回查詢後能夠從中提取數據,則必須包含指針字段。其結果是:

query.include("pointer_filed") 

希望它可以幫助

+1

@Jaffar Raza這裏是答案 – vlio20 2013-06-06 06:16:50

+0

你可以給一個關於如何使用JavaScript做到這一點的提示嗎? – 2013-11-04 17:05:50

+0

@AkshatAgarwal,對不起,我不知道如何在JavaScript中做到這一點。但我相信它非常相似。 – vlio20 2014-02-27 21:25:40

4

@Akshat阿加瓦爾,這裏是一個JavaScript例如:

var parseObj = Parse.Object.extend('parseObj'); 

new Parse.Query(parseObj) 
    .include('pointerField') 
    .find(function (data) { 
    data.get('pointerField').get('fieldName'); 
    }); 
0

對於iOS

PFQuery *parseQuery = [PFQuery queryWithClassName:@"MyClass"]; 
    [parseQuery whereKey:@"categoryId" equalTo:categoryId]; 
    [parseQuery includeKey:@"pinter_field"]; 
    [parseQuery findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) { 
    // 
    }]; 
+0

swift呢? – sirvon 2016-01-27 19:05:07

相關問題