1
我必須刪除服務器不再返回的本地存儲數據(孤立對象)。初始化對象管理器時,我正在使用以下代碼。使用Core數據/ Restkit刪除被管理對象
[objectManager addFetchRequestBlock:^NSFetchRequest *(NSURL *URL) {
RKPathMatcher *pathMatcher = [RKPathMatcher pathMatcherWithPattern:@"/relative_path"];
NSDictionary *argsDict = nil;
BOOL match = [pathMatcher matchesPath:[URL relativePath] tokenizeQueryStrings:NO parsedArguments:&argsDict];
if (match) {
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Articles"];
return fetchRequest;
}
return nil;
}];
在上面的代碼中,'match'條件返回TRUE。但Fetch Request不會刪除服務器未返回的孤立對象。
感謝您的回覆。我在我的AppDelegate中添加了這個函數。但是,當url匹配時,它將返回所有對象,包括從服務器中刪除的對象。有什麼我需要做的嗎?我已經更新了我的qn.pls。 –
它應該返回所有項目。 RestKit會將獲取結果與服務器結果進行比較,並刪除未從服務器返回的項目。 – Wain
但是,當我檢查我的數據庫。舊數據仍然存在於表格中。 –