RestKit NSFetchRequest Block zum Löschen von verwaisten Objekten
Ich habe eine über meine .com-Domain gehostete Rest-API, die bei Erhalt einer Anfrage wie dieser unter www.mydomain.com/api/lists die json-formatierten Daten wie unten gezeigt zurückgibt
[
{"list_id":"1","listName":"List Name 1"},
{"list_id":"2","listName":"List Name 2"},
{"list_id":"5","listName":"List Name 3"},
{"list_id":"7","listName":"List Name 4"},
{"list_id":"8","listName":"List Name 5"},
{"list_id":"11","listName":"List Name 6"},
{"list_id":"12","listName":"List Name 7"}
]
Jetzt füge ich einen NSFetchRequest-Block in meinem RKObjectManger hinzu, um mithilfe dieses Codes nach verwaisten Objekten zu suchen
[objectManager addFetchRequestBlock:^NSFetchRequest *(NSURL *URL) {
RKPathMatcher *pathMatcher = [RKPathMatcher pathMatcherWithPattern:@"/api/lists"];
NSDictionary *argsDict = nil;
BOOL match = [pathMatcher matchesPath:[URL relativePath] tokenizeQueryStrings:NO parsedArguments:&argsDict];
NSString *listID;
if (match)
{
listID = [argsDict objectForKey:@"list_id"];
NSLog(@"The listID is %@",listID);
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"List"
inManagedObjectContext:managedObjectStore.persistentStoreManagedObjectContext];
[fetchRequest setEntity:entity];
fetchRequest.predicate = [NSPredicate predicateWithFormat:@"listID = %@", @([listID integerValue])];
return fetchRequest;
}
return nil;
}];
aber meinlistID = [argsDict objectForKey:@"list_id"];
Gibt nil zurück, obwohl der von web zurückgegebene json "list_id" enthält. Bitte führen Sie mich, was hier falsch läuft.