2014-02-10 53 views
5

我們正在從關係表讀取數據時遇到問題。我們有table1,它的一列中有一個指向另一個表的指針,叫table2。我們需要從table1的指針中獲取table2中的數據,並將其放入一個查詢請求中。在Parse中使用指針獲取關係數據

因此,查詢現在的問題是:

PFQuery *query = [PFQuery queryWithClassName:@"table1"]; 
[query whereKey:@"completed" equalTo:[NSNumber numberWithBool:NO]]; 
[query whereKey:@"userId" equalTo:[PFObject objectWithoutDataWithClassName:@"Users" objectId:@"someID"]]; 

[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) 
{ 
    if (!error) 
    { 

     //new user 
     if(objects.count==0) 
     { 

     } 

     else 
     { 
      //here we get "Users:vAJS2T96V1" ,which is the pointer to table2 ,but we need to go deeper to the other table 
      // in the same query, and get the data from table2 . 
     } 
    } 

}]; 

我們如何從表2得到的數據,在一個查詢?

+1

你最近怎麼樣?你有沒有進一步? – Moonwalkr

+1

你解決了這個問題嗎? – Steve

回答

3

您可以使用「includeKey」從另一個表中提取數據:

[query includeKey:@"Users"]; 

更多信息:http://blog.parse.com/2011/12/06/queries-for-relational-data/

+0

我相信這是不正確的。 'includeKey'只適用於'指針'而不是'關係',儘管在這篇文章的各個地方使用了「關係」這個詞。正如在這個頁面的另一篇文章中提到的,這個清除了它:https://parse.com/questions/pointer-vs-relation – JaredH

+0

@JaredH OP是關於指針的:「我們有table1,它有一列一個指向另一個表的指針,稱爲table2。「沒有提及「關係」的任何地方, – Moonwalkr

1

我也面臨這個問題(在JS)在一直無法修復還沒完成。由於這個問題的複製非常簡單,我想現在Parse.com缺乏這個功能。有一個official answer2)(摘自「解析問題檔案」)討論的問題,證實了我的假設。

凱文·拉克爾(分析人員)

一般 「包括」 唯一行之有效的指針。與 響應中可能包含的關係可能有 有更多的對象相關。

傑米Karraker(分析人員)

是的,這是限制當您使用的關係。