0
我第一次用Xcode和Swift 3使用Parse(parse.com)。当我尝试从云端删除一个对象时,它不会更新,我得到以下消息:解析.deleteInBackground不工作(Swift)
[Error]: Object not found. (Code: 101, Version: 1.12.0)
在我的代码的其他部分,删除对象已经工作得很好,但在这种情况下它不是。这也很奇怪,因为当我从查询(下面)打印请求时,我确实得到了一个对象,那是我正在寻找的对象。我试着用块调用delete方法,并得到相同的“找不到对象”错误。我已经确保数据库中的类已经读取&写入权限启用,如果这是任何帮助。
这是我的代码:
let query = PFQuery(className: "FriendRequests")
query.whereKey("fromID", equalTo: self.incomingIDs[indexPath.row])
query.whereKey("toID", equalTo: PFUser.current()?.objectId)
query.getFirstObjectInBackground(block: { (object, error) in
if error == nil {
if let request = object {
print(request) // This works!
request.deleteInBackground()
}
}
})
预先感谢您。
'if let request'是什么?另外,使用'request.deleteInBackground()'和progress块来查看错误对象。 –
此外,这看起来是关系数据的完美用例。尝试添加一个名为“friendRequests”的列,而不是单独设置一个类。这样你可以调用'PFUser.current()。relation(forKey:“friendRequests”)''。然后,您可以像查看普通课程一样查询该问题。 –
@ evan.stoddard我会试试看,似乎是一个更优雅的解决方案。谢谢! – Sidney