我们是否能够有力地清除PFInstallation数据?
当我想强制注销用户时,需要重新创建另一个PFInstallation。
当前问题: 新帐户正在使用旧帐户的PFInstallation,新帐户无法更新PF安装(在注销时清除它)。
其他可能的解决方案: 使用新帐户的数据通过云代码更新PFInstallation的ACL。这可能吗?
答案 0 :(得分:1)
在安装的beforeSave触发器中,检查用户是否已设置。如果是这样,请关闭公共读/写访问权限并为该用户提供读/写访问权限。注销时,应删除用户,并且可以返回公共读/写访问权限。
Parse.Cloud.beforeSave(Parse.Installation, function(request, response) {
var installation = request.object;
if( installation.dirty("user") ) {
var acl = new Parse.ACL();
var user = installation.get("user");
if( user ) {
acl.setPublicReadAccess(false);
acl.setPublicWriteAccess(false);
acl.setReadAccess(user.id, true);
acl.setWriteAccess(user.id, true);
}
else {
acl.setPublicReadAccess(true);
acl.setPublicWriteAccess(true);
}
installation.setACL(acl);
}
response.success();
});