Может ли кто-нибудь просто подтвердить, что для добавления пользователя к существующей роли эта роль должна иметь общедоступный доступ для чтения и записи?
так как это, кажется, единственный способ заставить его работать?
Код для создания роли (работает нормально)
let roleACL = PFACL()
roleACL.setPublicReadAccess(true)
//roleACL.setPublicWriteAccess(true)
let role = PFRole(name: "ClubName", acl:roleACL)
role.saveInBackground()
Код для добавления пользователя в указанную роль (работает, если доступ для записи установлен как общедоступный)
let QueryRole = PFRole.query()
QueryRole!.whereKey("name", equalTo: "ClubName")
QueryRole!.getFirstObjectInBackgroundWithBlock({ (roleObject: PFObject?, error: NSError?) -> Void in
if error == nil
{
let roleToAddUser = roleObject as! PFRole
roleToAddUser.users.addObject(user)
roleToAddUser.saveInBackground()
//print(roleObject)
}
else
{
print(error)
//print(roleObject)
}
})
приведенный выше код работает, но, как я уже сказал, только тогда, когда для роли установлен публичный доступ на запись.
это сводит меня с ума сейчас
также, ЕСЛИ роль предназначена для публичного доступа на запись, не делает ли это ее уязвимой для изменения роли кем-либо?
если роль не должна иметь общедоступный доступ для записи, то может ли кто-нибудь указать мне правильное направление, чтобы приведенный выше код работал, не устанавливая роль с общедоступным доступом для записи.
ошибка, которую я получаю, если для роли нет открытого доступа для записи: объект не найден для обновления (код: 101, версия: 1.8.1)