ios - 解析 .deleteInBackground 不起作用(Swift)

标签 ios swift parse-platform swift3

我第一次在 Xcode 和 Swift 3 中使用 Parse (parse.com)。当我尝试从云中删除此处的对象时,它不会更新,并且收到以下消息:

[错误]:未找到对象。 (代码:101,版本:1.12.0)

在我的代码的其他部分,删除对象效果很好,但在本例中却不然。这也很奇怪,因为当我打印查询中的请求(如下)时,我确实得到了一个对象,即我正在寻找的对象。我尝试使用 block 调用删除方法并得到相同的“未找到对象”错误。我已确保数据库中的类启用了读写权限(如果有帮助的话)。

这是我的代码:

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()
        }
    }
})

提前谢谢您。

最佳答案

我回过头来发现这只是 ACL 的问题,如果有人遇到类似的问题......

首次创建对象时,只有发出请求的用户具有写入权限。在保存请求对象之前,我将写入权限设置为公共(public)。

let acl = PFACL()
acl.getPublicReadAccess = true
acl.getPublicWriteAccess = true
friendRequest.acl = acl

关于ios - 解析 .deleteInBackground 不起作用(Swift),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45639912/

相关文章:

ios - 如何在 iOS 中使用 RSA 公钥解密密码

swift 3 错误 : Argument labels '(_:)' do not match any available overloads

ios - Apple 远程推送通知在沙盒和生产模式下的行为似乎有所不同

ios - 在 PFObject 中管理枚举 - iOS Swift/Parse

ios - 世博会 35. Facebook 授权。 iOS 上的错误行为

iphone - 将图像发送到服务器后出现错误 - "Corrupt JPEG data: 214 extraneous bytes before marker"

ios - 在 Objective-C 中执行基于 curl 的操作

ios - 如何使用 userdefaults Swift 4 存储和检索表数据

parse-platform - 如何使用 parse.com 数据浏览器将现有用户与新创建的角色关联?

javascript - 如何在云代码中执行关系查询?