我有一个与 Parse.com 同步的 iOS 应用。
它可以找到添加到 Parse 的任何内容,并使用 PFQuery 将其添加到 Core Data。它还可以检查任何已更新的数据并进行相应的更新。
但是,我不确定如何在 Parse.com 上找到已删除的对象。
有谁知道会列出已删除的 ObjectID 及其删除日期的查询?然后我可以将它们从应用程序的核心数据中删除。
Best Answer-推荐答案 strong>
我也需要这个函数,但我认为将行标记为已删除会使数据膨胀并为每个查询添加一个条件。所以我创建了一个删除类。它只记录任何已删除行的类名和 ID,因此它很小:
function recordDeletion(klass, identifier) {
var Deletion = Parse.Object.extend("Deletion");
var deletion = new Deletion();
deletion.set("klass", klass);
deletion.set("identifier", identifier);
return deletion.save();
}
// for every class that you want deletions recorded, add one of these...
Parse.Cloud.beforeDelete("MyClass", function(request, response) {
recordDeletion("MyClass", request.object.id).then(function() {response.success();});
});
我的 iOS 客户端记录他们上次获取数据的日期,然后从 MyClass (+其他)和 Deletion 获取新创建/更新的所有内容。这样,就可以在本地删除Deletions了。
在更长的时间内,客户端会删除所有本地缓存的数据并获得所有内容的新副本(删除除外)。这使我可以在服务器上安排一个将清空删除表的作业(在比客户端周期长得多的周期上)。
关于ios - Parse.com - 查找已删除的对象,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/27779865/
|