解析查询不返回完整对象详细信息

时间:2015-11-27 19:23:17

标签: ios swift parse-platform

我正在使用iOS和Parse的消息传递应用程序,并且在Parse查询返回缺少参数的对象时遇到问题。让我解释一下。

我创建了自定义用户对象。名为MessageUserPFObjects的用户对象具有指向PFUser的指针字段。

我还有一个名为MessagePFObjects的自定义消息对象。 MessagePFObject有一个指向消息发送者和消息接收者的指针字段。消息发送方和接收方都是MessageUserPFObjects。

我在Parse中创建PFUsers,MessageUserPFObjects和MessagePFObjects没有任何问题。我可以看到所有字段都填充在Core中。

当我查询MessagePFObjects时,我的问题出现了。我正在查询任何具有特定MessageUserPFObject作为消息发送者或接收者的消息。我返回了所有MessagePFObjects,但消息接收器的MessageUserPFObject没有任何属性。这是查询以及生成的print语句。

//注意self.currentMessageUser是一个MessageUserPFObject

let predicate = NSPredicate(format: "messageSender == %@ OR messageReceiver == %@", self.currentMessageUser!, self.currentMessageUser!)

let query = MessagePFObject.queryWithPredicate(predicate)

query!.findObjectsInBackgroundWithBlock ({ (result, error) -> Void in

    if result!.count > 0
    {
        for element in result!
        {
            let tempMessage = element as! MessagePFObject
            print("I am printing the messageSender returned from Parse \(tempMessage.messageSender)")
            print("I am printing the messageReceiver returned from Parse \(tempMessage.messageReceiver)")
        }
}

打印结果

  

我正在打印从Parse返回的messageSender    {accountClaimed = 1;       firstName =汤姆;       lastName =汉森;       numberOfMessagesReceived = 0;       numberOfMessagesSent = 0; messageUser =“”; }

     

我正在打印从Parse返回的messageReceiver    {}

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

将此添加到您的查询中,以确保用户对象包含在Parse

的提取中
query.includeKey("messageSender")
query.includeKey("messageReceiver")