2015-09-03 24 views
0

工作在文檔https://www.parse.com/docs/ios/guide#relations-using-pointers 它說,在只要你能找到誰創造了遊戲用戶的例子objectForKey不是指針

// say we have a Game object 
PFObject *game = ... 

// getting the user who created the Game 
PFUser *createdBy = [game objectForKey:@"createdBy"]; 

但是當我使用確切的語法,因爲我想填充指針在我的 「用戶」 列

PFUser *user = [PFUser currentUser]; 
NSString *username = user.username; 



// Inside my queryForTable method so PFObject is returned in 
// tableView:cellForRowAtIndexPath:object 

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"fromUser = %@", user]; 
PFQuery *query = [PFQuery queryWithClassName:@"Activities" predicate:predicate]; 

// Inside tableView:cellForRowAtIndexPath:object 

PFUser *createdBy = [object objectForKey:@"user"]; 

NSLog(@"User to user ---%@", createdBy); 

但我得到的回覆是

User to user ---<PFUser: 0x7ff9024da860, objectId: aOisP569e3, localId: (null)> { 
    // Nothing here 
} 

如果我的理解正確,我是否應該找回用戶名,電子郵件等在我的用戶對象?

---更新1 ---

看着提供的Anypic應用解析它應該返回像這樣

<PFUser: 0x7f7ff9fafc00, objectId: LfADtx1K2J, localId: (null)> { 

// Stuff appears here 
    displayName = "poopiu"; 
    facebookId = 130941340571204; 
    profilePictureMedium = "<PFFile: 0x7f7ff9faf500>"; 
    profilePictureSmall = "<PFFile: 0x7f7ff9faf7f0>"; 
    username = I34MBM3WYSB5tjWIIvUvhH5fq; 
} 

,但我的是空的,即使我有一個名爲列用戶名是不是不確定的,所以我應該得到我的PFUser對象內部

--update 2--

這是我從伐木,像這樣的對象回來......

NSLog(@"Object---%@", object); 

<Activities: 0x7fbbebf42d20, objectId: rDwYI5Inuk, localId: (null)> { 
user = "<PFUser: 0x7fbbee1367e0, objectId: SFL0kVZ17x>"; 
status = 0; 
> 

回答

2

添加以下方法調用您的實例後query

[query includeKey: "user"]; 

默認情況下,查詢不會獲取通過查詢的直接對象的信息。

+0

工作!謝謝,它包含在Anypic源代碼中,但我完全錯過了<3行代碼 – poopit

0

你確定你的user是不是nil?根據docs,您必須登錄currentUser才能返回用戶對象。

+0

是的,我敢肯定,因爲我也在[對象objectForKey]中記錄了對象,我沒有得到零回,但分配給用戶的指針,所以我得到的結果從查詢 – poopit

0
[createdBy fetch]; 

NSLog(@"User to user ---%@", createdBy); 

試試這個,希望這將有助於