【问题标题】:How do I set the ACL of a PFObject in Swift?如何在 Swift 中设置 PFObject 的 ACL?
【发布时间】:2015-07-09 10:41:26
【问题描述】:

我正在使用 Parse iOS SDK,并且正在为特定类(不是“_User”)创建对象。但是,我需要修改这些对象的 ACL,以便任何人都可以读取或写入它。目前,Parse 将新创建对象的 ACL 设置为 Public Read 和 Creator Write。

简而言之,我不确定如何在 Swift 中将 Parse 对象的 ACL 设置为公共读/写。

【问题讨论】:

    标签: ios swift parse-platform acl


    【解决方案1】:

    已经更新了,现在应该是这样的:

    let acl = PFACL()
    acl.publicReadAccess = true
    acl.publicWriteAccess = true
    yourObject.ACL = acl
    

    【讨论】:

    • 我把它放在我的 viewcontoller 中,但你不知道我做错了什么吗?
    【解决方案2】:
    let acl = PFACL()
    acl.setPublicReadAccess(true)
    acl.setPublicWriteAccess(true)
    yourObject.ACL = acl
    

    更新:

    您可以使用“角色”为更大的用户组设置写入权限:

    acl.setWriteAccess(true, forRoleWithName:"everyone")
    

    您必须先创建角色。

    【讨论】:

    【解决方案3】:

    如果您希望您的 ACL 设置适用于您创建的所有对象,您可以:

    1. 打开AppDelegate.swift
    2. 在didFinishLaunchingWithOptions方法中

      • 你可以看到 PFACL() 是这样设置的:

        let defaultACL = PFACL();
        
        // If you would like all objects to be private by default, remove this line.
        defaultACL.setPublicReadAccess(true)
        
    3. 在这里,只需添加:

       defaultACL.setPublicWriteAccess(true)
      

    【讨论】:

    • 感谢您的解决方案。只是想补充一下,最新版本有语法defaultACL.publicWriteAccess = true
    【解决方案4】:

    从 Parse iOS SDK 1.14.3 开始:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多