Mam zapytanie z wieloma parametrami includeKeys, które są wskaźnikami do innej klasy. Po otrzymaniu danych z chmury parse wszystkie rekordy są zapisywane lokalnie przy użyciu metody pinAll. Po pobraniu zapisanych wyników mogę uzyskać rekordy, ale nie wskazówki. Zobacz przykładowy kod poniżejDane wskaźników, które nie przechowują w lokalnej bazie danych, analizują ios
[query includeKey:@"classOne.innerClass"];
[query includeKey:@"classTwo.innerClass"];
[query includeKey:@"classThree"];
[query includeKey:@"classFour"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error){
[PFObject pinAllInBackground:objects withName:@"LocalRecords" block:^(BOOL succeeded, NSError *error) {
}];
}];
A ja ściągam rekordy jak
PFQuery *lquery = [PFQuery queryWithClassName:[ClassName parseClassName]];
[lquery fromPinWithName:@"LocalRecords"];
BFTask *btask = [[lquery findObjectsInBackground] continueWithSuccessBlock:^id(BFTask *task) {
if (task.error) {
NSLog(@"Error: %@", task.error);
return task;
}
}];
Przy próbie uzyskania dostępu do dowolnej z kolumn w classOne, classTwo, classThree i classFour otrzymuję wyjątek kończące aplikację ze względu na nieprzechwycony wyjątek "NSInternalInconsistencyException", powód: "Key" name "nie zawiera danych. Wywołaj fetchIfNeeded zanim uzyskasz jego wartość. "
Zanim będzie można pobrać z lokalnej bazy danych, trzeba powiedzieć kwerendy których musi wyglądać '[zapytanie fromLocalDatastore];' – jsetting32
jestem już za pomocą tego ..... No szczęście – san
jestem zainteresowany aby dowiedzieć się więcej na ten temat. W jakiej wersji pakietu SDK na iOS testowałeś to? – fatuhoku