ios - Parse.com IOS,无法获取指向 PFUser 的指针

标签 ios parse-platform pfuser

我正在关注 Parse.com 上的教程,但似乎无法正常工作。这是我的问题。

我有一个名为 Questions 的类和一个名为 _User 的 PFUser 类型类(类名旁边有一个图片图标)。用户通过 FB 登录并注册为_User。我可以在 _User 类中看到自己。

我提出一个问题,并且在 Question 类中有一个名为 qOwner 的字段,它是问题的所有者。这是通过 iOS 应用程序保存新问题时设置的,如下所示:

QuestionCard[@"qOwner"] = [PFUser currentUser];

我可以在 _User 中看到我自己的 objectId 是当前问题所在行的 qOwner 列内的值.

_User class

Questions class

问题是我无法检索应用程序内的值。如果我将以下内容放在正确的位置:

PFQuery *query = [PFQuery queryWithClassName:@"Questions"];
[query addAscendingOrder:@"createdAt"];

[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
    if (!error) {
        // The find succeeded.
        NSLog(@"@@@ : Successfully retrieved %lu questions ", (unsigned long)objects.count);
        // Do something with the found objects
        NSLog(@"%@",objects);

        // fetched data are PFObjects
        // we need to convert that into a YesOrNo object
        // and then add it to _cards array

        for (PFObject *object in objects) {
            NSLog(@"currentUser : %@",[PFUser currentUser]);
            PFUser *qOwnerUser = [object objectForKey:@"qOwner"];
            NSLog(@"Question Made by : %@",qOwnerUser);
        }
.....

正在打印以下内容:

1)

@@@ : Successfully retrieved 1 cards 

2)

(
        "<Questions: 0x17011f5c0, objectId: zZWGsfciEU, localId: (null)> {\n    CardId = 999;\n     qOwner = \"<PFUser: 0x17037e000, objectId: LtdxP5K0n6>\";\n    type = 0;\n  }"

)

3)

currentUser : <PFUser: 0x174375e40, objectId: LtdxP5K0n6, localId: (null)> {
    facebookId = 10153480462518901;
    thumbnail = "<PFFile: 0x174479a80>";
    username = UYRRmfbXDHqr1Ws4VwJcAy2wx;
}

4)

Question Made by : <PFUser: 0x17037e000, objectId: LtdxP5K0n6, localId: (null)> {
}

1-2-3 看起来是正确的,我可以看到指针关系。但为什么在 4 里面 {} 我什么也没看到?我本希望看到与 3 中相同的用户详细信息。

我错过了什么吗?

最佳答案

默认情况下,Parse 不会在查询中获取指针值。您必须使用 includeKey: 告诉查询包含指针数据。这样做:

PFQuery *query = [PFQuery queryWithClassName:@"Questions"];
[query addAscendingOrder:@"createdAt"];
[query includeKey:@"qOwner"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
    ...
}];

关于ios - Parse.com IOS,无法获取指向 PFUser 的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31329896/

相关文章:

ios - 用户对协议(protocol) PFSubclassing 的冗余一致性(Swift 2.0)

ios - 调用 [PFFFacebookUtils initializeFacebook] 时解析崩溃 - semaphore_wait_trap

ios - SwiftUI中的.transition修饰符

javascript - 单击 "submit"按钮后,将数据发送到 Parse

ios - Twitter登录解析iOS

swift - 解析检测注册错误

ios - “在使用Parse之前,必须在registerSubclass中注册PFUser类。”

objective-c - 未知日志 wx=wy=rx=ry=ios

objective-c - UITableView 自定义类以编程方式?

iPhone:此类不符合键警报 View 的键值编码