2

基本的な Parse.com クエリはキャッシュされていますが、この特定のクエリをキャッシュすることができません。推奨されているように何度も実行しましたが、キャッシュされた結果は常に nil です。解決策をアドバイスしてください。

PFQuery *lotsOfWins = [PFQuery queryWithClassName:@"Class1"];
[lotsOfWins whereKey:@"Score" equalTo:@"0:]; //AND
[lotsOfWins whereKey:@"Status" notEqualTo:@"4"];

PFQuery *fewWins = [PFQuery queryWithClassName:@"Class2"];
[fewWins whereKey:@"NAME" equalTo:@"KHAN"]; AND
[fewWins whereKey:@"meetingStatus" notEqualTo:@"4"];


PFQuery *query = [PFQuery orQueryWithSubqueries:[NSArray arrayWithObjects:fewWins,lotsOfWins,nil]];
[query orderByDescending:@"updatedAt"];
query.limit = [NSNumber numberWithInt:10];
query.cachePolicy = kPFCachePolicyCacheThenNetwork; // CACHE POLICY
[query findObjectsInBackgroundWithBlock:^(NSArray *results, NSError *error) {

    NSLog(@"Successfully retrieved %d results.", results.count);
    if(error) {
        NSLog(@"It's an error!");
    }
}];
4

2 に答える 2

0

Limit は、NSNumber ではなく、NSInteger プロパティです。query.limit = 10 を試してみましたが、うまくいきました。

于 2015-09-11T22:53:41.187 に答える
0

クエリの制限を削除すると、問題が解決しました。どうやらサブクエリは制限をサポートしていません。

query.limit = [NSNumber numberWithInt:10]; //削除されました

于 2013-07-06T17:24:34.087 に答える