Quickblox:是不是可以删除用户创建的所有自定义对象
Posted
技术标签:
【中文标题】Quickblox:是不是可以删除用户创建的所有自定义对象【英文标题】:Quickblox: Is it possible to delete all custom objects created by the userQuickblox:是否可以删除用户创建的所有自定义对象 【发布时间】:2013-12-12 13:01:49 【问题描述】:是否可以通过一次 API 调用删除当前用户的所有特定类的自定义对象?
调用可能是这样的:
[QBCustomObjects deleteObjectsForClassName:@"ClassName" delegate:self];
当用户想要删除他/她的帐户或想要删除他为特定类创建的所有条目时,这将很有用。
此外,如果应用程序由于任何原因丢失了删除单个对象所需的类 ID,这将是有益的。然后,这将删除在开始单独删除它们之前首先获取所有类 ID 的额外步骤。
请让我知道这是否可行,但我遗漏了一些东西。任何关于如何以最有效的方式在带宽和 API 使用方面做到这一点的提示都非常感谢。
提前致谢!
(我正在使用 Quickblox ios SDK:具有最新 git 提交的版本:2013 年 11 月 27 日星期三 18:52:20)
【问题讨论】:
【参考方案1】:您可以通过 3 个步骤删除特定类的所有对象:
1) 通过 QBCustomObjects 类检索所有对象:
objectsWithClassName:extendedRequest:delegate:
2) 创建数组,循环遍历所有项目并收集它们的项目 ID。
3) 通过 QBCustomObjects 类执行删除(并传递 ID 数组)
deleteObjectsWithIDs:className:delegate:
(有关如何使用此方法的更多详细信息,请查看此http://sdk.quickblox.com/ios/Classes/QBCustomObjects.html)
PS:不知道,可能以后SDK会出现这个功能。
【讨论】:
这是真正的解决方案。实际上只有记录的所有者才能删除他的记录。其他用户做不到。这就是为什么 QuickBlox 不提供 [QBCustomObjects deleteObjectsForClassName:@"ClassName" delegate:self];现在方法。 感谢@frankWhite 的回复!这是我目前所做的过程,以防我必须清理所有项目,此外还要为多个类的用户单独存储所有类 ID。我只是想知道它是否可以变得更容易,因为这效率低下(许多 API 来回调用,尤其是在对大量项目使用分页时)以及执行简单数据库操作的复杂方式。 感谢@Igor 的评论。提供操作以简单地删除特定类的所有者的所有记录是否仍然有用?我同意它不必提供删除其他用户记录的方法。 是的,QuickBlox 团队正在考虑。就像使用过滤器删除一样。 很高兴听到!顺便说一句,此功能可以使您与其他类似服务(例如 Parse)形成积极的区别(上次我检查时,他们也没有提供这种方法。我可能想错了)。以上是关于Quickblox:是不是可以删除用户创建的所有自定义对象的主要内容,如果未能解决你的问题,请参考以下文章