2014-07-04 31 views
1

假設我有一個與目標類Child具有一對多關係的Parent類。父對象和子對象都不是用戶創建的,我在數據瀏覽器中創建了這些對象,並且我不知道如何在子對象上設置關係或指針返回給它的特定父對象。我可以沒有問題地獲得Parent的Child對象。但是,我怎麼能得到一個孩子的父母?我不希望繼續將父對象和子對象從VC傳遞給VC。再一次這兩個對象不是由用戶創建的,所以我不能做:如何從Parse中的關係中獲取父對象

[Parent setObject:Child forKey:"child"]; 

,然後查詢父類是這樣的:

[query whereKey:@"child" isEqualTo:Child]; 

而且查詢所有的父母和他們的關係,然後讓那個特定的兒童然後回到父母似乎是一個矯枉過正。

那麼,如何設置數據瀏覽器中的子對象上的特定父指向父指針?如果我只想使用Child對象,如何從代碼中獲取Parent對象?

回答

0

這是使用反轉指針可能更有用的情況。如果需要,除了現有的關係之外,還可以完成此操作,但需要一些更好的保存邏輯。

只需將parent列添加到類型爲Pointer<Parent>Child

爲了得到父母的所有兒童,你只是做一個查詢:

[childQuery whereKey:@"parent" isEqualTo:parent]; 

要查詢一個孩子,也得到了家長:

[childQuery includeKey:@"parent"]; 
// filter as needed 

在塊,看起來是孩子,你可以只需使用:

PFObject *parent = child[@"parent"]; 

這將是一個完全填充Parent由於includeKey:

注意:如果您保持兩種關係,則創建新對象變得更加棘手,因爲您必須保存父/子(取消設置child.parent),然後更新子項以指向父項並再次保存。

相關問題